기본 CasperJS 스크립트가 있는데, 아마존 검색 상자에 사전 정의 된 검색어가 삽입되며 스크립트를 실행하고 캡쳐 된 이미지 상자의 텍스트를 잘 볼 수 있습니다.CasperJS 명령 줄을 통해 변수 번호를 전달하면 숫자 대신 일부 문자가 표시됩니다.
나는 그것을 동적으로 만들고 검색 용어를 미리 정의하는 대신 명령 줄을 통해 전달합니다. 나는이 작업을 수행 할 때이 캡처 된 이미지를 볼 때
casperjs amazon.js --barcode=4380758484375
그러나, 나는 아마존 사이트의 검색 필드에 텍스트를 얻을 수 없습니다. 나는 그것이 echo'ed로서 가치가 전달되고있다 알아요.
이번 주말에 매우 제한되고 배우기 시작한 경험으로, var를 정의해야하는지 궁금합니다. 테스트 목적으로 바코드는 명령 줄을 통해 전달되는 값으로 설정되고 barcode1은 미리 정의됩니다.
var casper = require('casper').create();
var x = require('casper').selectXPath;
casper.userAgent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)');
casper.echo("Casper CLI passed args:");
require("utils").dump(casper.cli.args);
casper.echo("Casper CLI passed options:");
require("utils").dump(casper.cli.options);
var barcode = casper.cli.get("barcode");
var barcode1 = "5030945112877"; //casper.cli.get("barcode");
casper.echo("*"+barcode1+"*");
casper.start('https://www.amazon.co.uk/');
casper.then(function() {
this.sendKeys('#twotabsearchtextbox', barcode);
console.log('Entering Search Term '+barcode+' Into Amazon Search Field');
casper.capture('amazon.png');
});
casper.run();
내가 --barcode=fifa
으로 설정하면 작동합니다. 내가 --barcode=fifa123
로 설정하는 경우에도 작동하지만, 내가 캡처 이미지에서, --barcode=123
로 설정하면 나는 확장 된 문자가 Raw parameter values 참조 123
나는 라스베리 파이에서 실행되는 CasperJS 1.1.1 및 PhantomJS 1.9.8이 있습니다. 여전히 똑같은 문제와 저의 삶에 대해 그것을 해결해줍니다. – Skydiver1977
나는 라스베리 파이 1에서 CasperJS 1.1.1 및 PhantomJS 1.9.7을 사용해 보았습니다. 정확히 당신에게 효과가없는 것은 무엇입니까? 스크린 샷에서 내가 전달한 것을 봅니다.코드에서 첫 번째'echo'는'barcode1'에 대한 것이고'barcode'에 대한 것이 아닙니다. –
내가 문제를 발견했다고 생각합니다. --barcode = fifa로 설정하면 작동합니다 --barcode = fifa123 그것도 작동하지만, 만약 내가 그것을 설정 - barcode = 123 캡쳐 이미지에서 확장 된 char appoke 123, 그래서 내가 바코드 바코드 몇 가지를 정의 할 수있다 궁금해. – Skydiver1977