用于从网站下载所有.pdf文件的Python / Java脚本

时间:2014-02-15 13:50:03

标签: java python html download

我想知道是否有可能编写一个脚本,可以通过编程方式遍历整个网页并自动下载所有.pdf文件链接。在我开始尝试之前,我想知道这是否可行。

问候

5 个答案:

答案 0 :(得分:9)

是的,这是可能的。 下载pdf文件你甚至不需要使用Beautiful Soup或Scrapy。

从python下载非常简单 建立所有linkpdf链接列表&下载它们

参考如何构建链接列表: http://www.pythonforbeginners.com/code/regular-expression-re-findall

如果您需要浏览多个链接页面,那么其中一个框架可能会有所帮助 如果你愿意在这里建立一个很棒的教程,那么btw也是一个很好的Python介绍。 https://www.udacity.com/course/viewer#!/c-cs101

答案 1 :(得分:7)

是的,可能。

在python中它很简单; urllib将帮助您从网上下载文件。 例如:

import urllib
urllib.url_retrive("http://example.com/helo.pdf","c://home")

现在你需要创建一个脚本,找到以.pdf结尾的链接。

示例html页面:     Here's a link

您需要下载html页面并使用htmlparser或使用正则表达式。

答案 2 :(得分:4)

是的,这是可能的。这称为网络抓取。对于Python,有各种各样的软件包来帮助解决这个问题,包括scrapy,beautifulsoup,mechanize以及许多其他方法。

答案 3 :(得分:2)

是的,在Python中是可能的。您可以获取html源代码,使用BeautifulSoup对其进行解析,然后找到所有标签。接下来,您可以检查以.pdf扩展名结尾的链接。列出所有pdf链接后,您可以使用

下载它们
wget.download(link)

requests

详细说明和完整的源代码可以在这里找到:

https://medium.com/@dementorwriter/notesdownloader-use-web-scraping-to-download-all-pdfs-with-python-511ea9f55e48

答案 4 :(得分:0)

使用urllib下载文件。例如:

import urllib

urllib.urlretrieve("http://...","file_name.pdf")

示例脚本,用于查找以 .pdf 结尾的链接: https://github.com/laxmanverma/Scripts/blob/master/samplePaperParser/DownloadSamplePapers.py