* * 응답에서 즉 우리가 웹 양식에 파라미터 세트를 제출할 수 있습니다 내 IT 조직이 설정 한 웹 사이트가있다파이썬 - 웹 양식 제출에 의해 반환 된 파일 다운로드
, 클릭 정보를 명확히하기 위해 업데이트 "submit"버튼을 클릭하면 다운로드 폴더로 자동 전송 된 (적어도 현재 사용중인 Chrome 설정을 사용하는) 지정된 애플리케이션에 프로비저닝 된 .txt 파일을 생성합니다.
이 프로세스를 자동화하고 매주 업데이트 된 사용자 목록을 얻으려면 양식을 제출하기 위해 urllib (+ urllib2, 요청 등)를 사용하는 python 스크립트를 작성하려고했습니다. 다운로드 된 .txt 파일을 가져옵니다.
나는 아래의 코드를 실행하려고
...
import urllib, urllib2
url = 'my url'
values = {'param1' : 'response1',
'param2' : 'response2',
'param3' : 'response3'
}
data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
data = response.read()
... 그것은 오류가 발생하지 않지만, 나도 어떤 응답을하지 않습니다. 파일이 다운로드 될 가능성이있는 경로를 모두 확인했는데 찾을 수 없습니다.
그리고 내가 좋아하는 뭔가를 추가 할 경우 ...
with open('response.txt', 'w') as f:
f.write(data)
은 ... 다음은 파일에 페이지의 HTML 소스를 기록; 본질적으로 양식을 통해 게시하는 쿼리에서 생성 된 파일을 실제로 가져 오는 것은 아닙니다.
여기의 도움을 주시면 감사하겠습니다.
불행히도이 기능은 웹 페이지의 HTML 소스를 텍스트 파일로 반환합니다. 제출 한 파일을 실제로 가져와야합니다. – mbell141
양식이있는 페이지의 HTML이 있습니까? – jonathan0wilson
귀하의 질문을 올바르게 이해하고 있다면, 해당 페이지의 HTML이 요청 프로세스에 의해 생성 된 양식/파일 내에 있지 않습니다. 또한 차이가 나는 경우 입력 매개 변수 중 하나가 쿼리 매개 변수이므로 런타임까지 파일이 생성되지 않습니다. 따라서 .txt 파일이 실제로 생성되고 파일 다운로드가 시작되기 전에 일반적으로 5-10 초 지연됩니다. – mbell141