登录网站,下载文件

时间:2017-04-09 21:47:30

标签: python pdf cookies download

我正在尝试使用python脚本登录我学校的网站,然后下载每周上传一次的家庭作业PDF。我已经从普通的,不受保护的网站成功下载了PDF,但我无法理解cookie的机制。我做过一堆谷歌搜索,但我发现的唯一代码如下。

import urllib, urllib2, cookielib

testfile = urllib.URLopener()

username = 'example@gmail.com'
password = '*****'

cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
login_data = urllib.urlencode({'username' : username, 'j_password' : password})
opener.open('http-this.pdf', login_data)
testfile.retrieve("http-path-to-file")

基本上,我已尝试输入所有适当的信息,但它不起作用,我不知道如何操纵代码使它做我想做的事情。如何使用python登录网站然后下载pdf?

修改的 好的,这是新代码,我有这样的工作,但它输出了一个带有.pdf扩展名的网站html代码的副本,而不是我实际上试图从网站上下载的文件。出了什么问题?

import requests
s = requests.Session()
data = {"login":"MYLOG", "password":"*****"}
url = "https://website.php"
url2 = "https://path-to-pdf.pdf"

r2 = s.post(url, data=data)
s.get(url2)
r = s.get(url2)
with open("204_HW.pdf", "wb") as code:
    code.write(r.content)

0 个答案:

没有答案