2014-08-28 4 views
0
오늘 긁어와 놀아 요청 및 casperjs의 librarys를 사용하여 HTML의 두 개의 서로 다른 출력을 발견했다

파이썬 요청 라이브러리 대 Casperjs html 출력?

불을 지르고 또는 브라우저 소스에서 볼 수있는 실제 HTML은 다음과 같습니다

<td align="left"> 
Miles with Expiration Deferred Through 
        Jan 22, 2016 
</td> 

Casperjs가 출력 동일 :

<td align="left"> 
Miles with Expiration Deferred Through 
        Jan 22, 2016 
</td> 

요청이 약간 다른 결과를 출력합니다.

<td align="left"> 
Miles with Expiration Deferred Through 

    Fri Jan 22 00:00:00 CST 2016 
</td> 

아래의 기본 요청 로직을 사용하고 있습니다.

r = requests.get(url) 
html = r.text 

여기에 무슨 일이 일어나고 있습니까? 내가 이것을 쓰는 동안 아마도 쿠키 데이터가 요청 라이브러리를 사용하여 올바르게 설정되지 않았으며 약간 다른 데이터/형식을 다시 보내고 있다고 생각할 것입니까? Caspjer로 모든 수준이 높고 쿠키를 만지지 않습니다. 어떤 아이디어?

+0

차이점은 아마도 헤더에 있습니다. 'requests'가 사용하는 [기본 헤더] (https://github.com/kennethreitz/requests/blob/d33ce49aaa46c855458582f338a6e2039d428bee/requests/utils.py#L553)는 다음과 같습니다. – alecxe

+0

2 개의 다른 사용자 에이전트 문자열을 시도했습니다. 나는 같은 결과를 얻고있다. 다른 아이디어? –

답변

1

대부분은 CasperJS에서 JavaScript로 서식을 지정하는 반면 Requests는 HTTP 요청에서 원시 데이터를 표시하지만 (자바 스크립트는 실행하지 않음)

+0

당신이 여기 뭔가있는 것 같아요. 나는 그것을 더 자세히 조사 할 필요가있다. 아이디어 주셔서 감사합니다 :) –