2017-10-10 3 views
0

파이썬 스콥을 사용하여 사용자 리뷰를 얻습니다. 여러 페이지가있을 수 있으며, 더 많은 댓글을 보려면 "더 자세히"를 클릭해야합니다. https://en.drivy.com/car-rental/berlin/dacia-dokker-218119파이썬 스콥을 사용하여 다음 페이지를 스크랩합니다.

검토가 10 개 이상의 코멘트 경우 내가 클릭 한 다음 의견을 얻기 위해 링크 "더보기"를해야합니다주의 사항 :

내가 크롤링 할 페이지에 대한 링크입니다. 또한 알은 "더보기"URL 링크는 HTTPS입니다 : 내가 HTTPS로 이동 scrapy를 사용하는 경우, 그러나 //en.drivy.com/cars/218119/reviews?page=2 & REL = 다음

: //en.drivy.com/cars/218119/reviews?page=2 & rel = next, 웹 사이트가 https : // en.drivy.com/carrental/berlin/dacia-dokker-218119로 다시 리디렉션됩니다. 나는 정말로 다음 10 개의 코멘트를 얻지 못한다. (웹 사이트에서 쿠키 또는 세션 ID를 사용하고 새로운 방문으로 내 스팸을 식별하는지 궁금하다.)

나는 파이썬 셀렌을 사용하여 웹 페이지를 열고 "더 자세히"를 클릭하여 의견을 얻을 수 있지만, 셀렌은 매우 느리고 나는 대신 치료를 사용할 수 있기를 바랍니다.

아무에게도 도움이 될 수 있습니까? 아니면 최소한 나에게 진행 방향을 알려 주겠니? 미리 감사드립니다.

답변

0

"Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript" 헤더를 설정해야합니다. 주석 텍스트가 들어있는 JS 객체를 잡아낼 수 있습니다.

yield Request("https://en.drivy.com/cars/218119/reviews?page=2&rel=next", parse = ..., ..., headers={'Accept': "*/*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"})

+0

답장을 부탁드립니다. 나는 당신이 보여준대로 헤더를 설정하여 시도했다. 그러나이 오류가 나타납니다. 2017-10-10 16:24:45 [scrapy.downloadermiddlewares.retry] 디버깅 : 다시 시도 (1 회 실패) : 500 내부 서버 오류 – huahz

+0

다른 헤더 (특히 X-CSRF-Token)를 포함 시켰습니까? –

+0

토큰을 포함하면 작동합니다! 굉장해! – huahz