1
저는 파이썬에서 Mechanize를 사용하여 웹 스크래핑을 수행하고 있습니다. 대부분의 웹 사이트는 작동하지만 특정 페이지는 내용이나 응답을 반환하지 않습니다.Mechanize 응답이 내용을 반환하지 않습니다.
내 설정은
self._browser = mechanize.Browser()
self._browser.set_handle_refresh(True)
self._browser.set_debug_responses(True)
self._browser.set_debug_redirects(True)
self._browser.set_debug_http(True)
하고 실행하는 코드는 다음과 같습니다
add_cookie_header
Checking xyz.com for cookies to return
- checking cookie path=/
- checking cookie <Cookie ASP.NET_SessionId=j3pg0wnavh3yjseyj1v3mr45 for xyz.com/>
it's a match
send: 'GET /page.aspx?leagueID=39 HTTP/1.1\r\nAccept-Encoding: identity\r\nHost: xyz.com\r\nCookie: ASP.NET_SessionId=aapg9wnavh3yqyrtg1v3ar45\r\nConnection: close\r\nUser-Agent: Mozilla/5.0 (Windows NT 6.0) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Date: Tue, 07 Feb 2012 19:04:37 GMT
header: Pragma: no-cache
header: Expires: -1
header: Connection: close
header: Cache-Control: no-cache
header: Content-Length: 0
extract_cookies: Date: Tue, 07 Feb 2012 19:04:37 GMT
Pragma: no-cache
Expires: -1
Connection: close
Cache-Control: no-cache
Content-Length: 0
내가로 리디렉션으로하고하지 않고 시도했다 :이 디버그 출력
response = self._browser.open(url)
아무 소용이. 어떤 아이디어?
페이지를 브라우저에 올바르게 추가 할 수 있습니다.
피들러 (fiddler) 나 찰스 (charles)와 같은 디버깅 프록시는 wireshark보다 훨씬 잘 작동합니다. – pguardiario
@pguardiario 귀하의 의견을 보내 주셔서 감사합니다. 필자는 이들 중 어느 하나도 사용하지 않았지만 오픈 소스가 아닐지라도 유용하다고 생각됩니다. – jcollado
크롬에서 개발자 세션을 사용하도록 설정했는데 문제 해결에 도움이되는 것으로 보입니다. 감사 –