2017-12-13 18 views
0

몇 가지 기회를 위해 웹 사이트를 모니터링하고 있습니다. 이러한 기회는 문자 그대로 몇 초 안에 사라집니다. 나는 PHP 코드를 써서 잘 작동하는 것을 도와 주었고, 뭔가가 가능 해지면 언제든지 경고 해 주었다. 그런 다음 웹 사이트를 열고, 로그인하고, captcha를 입력하고, 몇 페이지를 탐색해야한다. 갔다.PHP는 말풍선 요청 후 일부 브라우저에서 쿠키 파일로 URL을 열 수 있습니까?

브라우저에서 쿠키 파일과 함께 특정 웹 페이지를 열어서 기회를 잡는 데 더 많은 시간을 할애 할 수 있는지 궁금합니다.

exec ('firefox -private [url] > /dev/null 2>&1 &'); 

을하지만 사람이 페이지에서 쿠키를 가져올 수있는 옵션이 존재하는 것 같다하지 않습니다 나는 exec를 사용하여 파이어 폭스를 열 수 있습니다 알고 있습니다. 미리 감사드립니다.

편집 : 그런데 리눅스 (우분투)를 사용하고

.

+0

페이지를 비공개 모드로 열면 Firefox는 방금 연 세션에 속하지 않은 모든 쿠키를 비활성화합니다. 따라서 개인 모드없이 열면 모든 쿠키가 자동으로로드됩니다. –

+0

쿠키가 'curl'에 의해 생성 된 별도의 파일에 저장되어 있기 때문에 개인 모드를 사용하는 이유가 브라우저를 열어야 할 때마다 쿠키를 삭제할 필요가 없기 때문입니다. – razzak

+1

왜 매번 쿠키를 삭제하지 않으시겠습니까? 다음을 할 수 있습니다 : 1.) cookies.sqlite 파일을 다른 이름으로 복사하십시오. 2.) curl에서 쿠키를 cookies.sqlite로 저장합니다. 3) firefox 을 실행하십시오. 4.) cookies.sqlite를 이전 쿠키로 바꿉니다. - 브라우저가 닫히면 firefox 명령이 중지되므로 모든 것을 bash 스크립트에 쓸 수 있습니다. –

답변

0

? 네, 파이어 폭스 애드온은 쉽게 쿠키를 수정할 수 있습니다. 그리고 파이어 폭스 애드온을 PHP와 함께 127.0.0.1 웹 서버와 통신하여 쿠키를 전송할 수는 있지만 솔루션을 구현하기가 훨씬 쉽습니다. 런타임은, 단순히 UR PHP 스크립트는 로그인 한 쿠키 세션 PHP 컬에서 브라우저로 전송하는 데 필요한 자바 스크립트를 생성 할 수 있도록하는 것) 당신이 구현 시간을 절약, 예를 들어

$clraw = curl_getinfo ($ch, CURLINFO_COOKIELIST) [0]; 
preg_match ('/PHPSESSID\s+([^\;\s]+)/', $clraw, $matches); 
$sessid = $matches [1]; 
echo 'document.cookie="PHPSESSID=' . $sessid . ';";', PHP_EOL; 

지금은 뭔가를 메아리 document.cookie="PHPSESSID=v2fuitqmcbb54mc0drspg0l560;";처럼 그냥 & 붙여 넣기를 자바 ​​스크립트 콘솔에 복사하고 새로 고침하는 것 ... addons를 통한 자동 접근보다 약간 느리지 만 구현하기는 쉽다. (그리고 ofc, 복사하는 데 2 ​​초 정도 걸린다면) & 자바 스크립트에 붙여 넣기 만하면 그만한 가치가 있고, 애드온으로 그 프로세스를 자동화 할 수 있습니다.)