2012-07-17 2 views
2

저는 파이썬에 익숙하지 않습니다.새로 고침을 위해 파이썬 HTTP 요청을 새로 고침

페이지를 스크랩하는 것은 매우 간단하지만 2 분마다 완전히 업데이트됩니다. 난 모든 데이터를 스크랩 관리했지만 문제는 그 프로그램이 매 2 분 (나는 taskeng.exe를 통해 시도하고 스크립트에서 루핑)을 실행하더라도 웹 사이트에서 당기는 HTML은 매 12 의사록. 명확하게하기 위해, 내가 스크랩하고있는 웹 사이트는 업데이트 할 때 타임 스탬프를 가지고 있습니다. 내 프로그램은 다른 데이터와 함께 해당 스탬프를 가져 와서 csv 파일에 씁니다. 그러나 12 분 동안 동일한 데이터를 가져온 다음 갑자기 데이터가 도착합니다. 그래서 출력은 보이는 같은 :

16:30, Data1, Data2, Data3 
16:30, Data1, Data2, Data3 
... 
16:30, Data1, Data2, Data3 
16:42, Data1, Data2, Data3 
16:42, Data1, Data2, Data3 

곳이어야 같이

16:30, Data1, Data2, Data3 
16:32, Data1, Data2, Data3 
16:34, Data1, Data2, Data3 
16:36, Data1, Data2, Data3 
16:38, Data1, Data2, Data3 
16:40, Data1, Data2, Data3 
16:42, Data1, Data2, Data3 

나는이 myside의 캐시과 관련이있다 생각합니다. HTTP 요청을 강제로 완전히 새로 고치거나 강제로 캐시에 저장하지 않으려면 어떻게해야합니까?

나는 BeautifulSoup 및 Mechanize를 사용하고 있습니다. http 요청에 대한 내 코드는 다음과 같습니다.

mech = Browser() 

url = "http://myurl.com" 

page = mech.open(url) 

html = page.read() 
soup = BeautifulSoup(html) 

내 코드를 게시하는 데 도움이된다면 그렇게 할 수 있습니다. 미리 조언 해 주셔서 감사합니다.

답변

0

requests과 같은 간단한 도구를 사용할 수 있습니다.

import requests 
response = requests.get(url) 
html = response.text 

하지만 당신은 정말 당신은 또한 (아마도 귀하의 요청에 쿠키를 소개하고있다) 브라우저() 물건을 건너 뛸 수 있습니다 기계화를 고수하려는 경우. 자세한 내용은 mechanize docs을 확인하십시오.

response = mechanize.urlopen("http://foo.bar.com/") 
html = response.read() # or readlines 
+0

감사합니다. 이 요청 모듈은 정말 유용합니다. 당신이 옳았다 고 생각합니다. 기계화는 어떻게 든 쿠키로 뭔가를하고있었습니다. 건배. – user1532308

관련 문제