如何从抓取的链接[Python]下载PDF?
我正在用Python制作一个PDF网页刮板。从本质上说,我试图从我的一门课程中删去所有的课堂讲稿,这些讲稿是PDF格式的。我想输入一个url,然后获取PDF并将其保存在笔记本电脑的一个目录中。我已经看了好几本教程,但我不完全确定如何进行这项工作。关于StackOverflow的问题似乎对我也没有帮助 以下是我到目前为止的情况:如何从抓取的链接[Python]下载PDF?,python,pdf,web-scraping,beautifulsoup,python-requests,Python,Pdf,Web Scraping,Beautifulsoup,Python Requests,我正在用Python制作一个PDF网页刮板。从本质上说,我试图从我的一门课程中删去所有的课堂讲稿,这些讲稿是PDF格式的。我想输入一个url,然后获取PDF并将其保存在笔记本电脑的一个目录中。我已经看了好几本教程,但我不完全确定如何进行这项工作。关于StackOverflow的问题似乎对我也没有帮助 以下是我到目前为止的情况: import requests from bs4 import BeautifulSoup import shutil bs = BeautifulSoup url
import requests
from bs4 import BeautifulSoup
import shutil
bs = BeautifulSoup
url = input("Enter the URL you want to scrape from: ")
print("")
suffix = ".pdf"
link_list = []
def getPDFs():
# Gets URL from user to scrape
response = requests.get(url, stream=True)
soup = bs(response.text)
#for link in soup.find_all('a'): # Finds all links
# if suffix in str(link): # If the link ends in .pdf
# link_list.append(link.get('href'))
#print(link_list)
with open('CS112.Lecture.09.pdf', 'wb') as out_file:
shutil.copyfileobj(response.raw, out_file)
del response
print("PDF Saved")
getPDFs()
最初,我已经获得了所有的PDF链接,但不知道如何下载它们;该代码现在已注释掉
现在我已经到了只下载一个PDF的地步;PDF确实可以下载,但它是一个0 KB的文件
如果有任何用处,我使用的是Python 3.4.2。如果这是不需要登录的东西,您可以使用:
谢谢你。即使它对OP没有帮助,我也学到了一个新的Python函数。:)令人惊叹的。这很好用!不过还有一个后续问题;如何选择保存文件的目录?@FreddieV4您可以在第二个参数中指定文件的完整路径,请参见中的示例。谢谢。>如果这是不需要登录的内容。。。。如果发生了什么变化?
from urllib.request import urlretrieve
for link in link_list:
urlretrieve(link)