Python3爬虫下载pdf(一)
来源:互联网 发布:淘宝女人秋装 编辑:程序博客网 时间:2024/06/05 20:39
Python3爬虫下载pdf(一)
最近在学习python的爬虫,并且玩的不亦说乎,因此写个博客,记录并分享一下。
需下载以下模块
- bs4 模块
- requests 模块
一、源码
"""功能:下载指定url内的所有的pdf语法:将含有pdf的url放到脚本后面执行就可以了"""from bs4 import BeautifulSoup as Soupimport requestsfrom sys import argvtry: ##用于获取命令行参数,argv[0]是脚本的名称 root_url = argv[1]except: print("please input url behind the script!!") exit()##获得含有所有a标签的一个列表def getTagA(root_url): res = requests.get(root_url) soup = Soup(res.text,'html.parser') temp = soup.find_all("a") return temp##从所有a标签中找到含有pdf的,然后下载def downPdf(root_url,list_a): number = 0 ##如果网站url是以类似xx/index.php格式结尾,那么只取最后一个/之前的部分 if not root_url.endswith("/"): index = root_url.rfind("/") root_url = root_url[:index+1] for name in list_a: name02 = name.get("href") ##筛选出以.pdf结尾的a标签 if name02.lower().endswith(".pdf"): pdf_name = name.string number += 1 print("Download the %d pdf immdiately!!!"%number,end=' ') print(pdf_name+'downing.....') ##因为要下载的是二进制流文件,将strem参数置为True response = requests.get(root_url+pdf_name,stream="TRUE") with open(pdf_name,'wb') as file: for data in response.iter_content(): file.write(data)if __name__ == "__main__": downPdf(root_url,getTagA(root_url))
二、亮点
- 利用str.rfind(“S”) 函数来获得 S 在str 从右边数第一次出现的index
- 使用str.lower().endswith(“S”) 函数来判断str 是否以S/s 结尾
阅读全文
1 0
- Python3爬虫下载pdf(一)
- Python3爬虫下载pdf(二)
- python3爬虫下载网页上的pdf
- python3爬虫(网页下载)
- python3爬虫学习(一)
- python3爬虫,最短时间实现(一)
- Python3 爬虫(一)-- 简单网页抓取
- Python3 爬虫(一)-- 简单网页抓取
- python3 爬虫环境准备 (一)
- python3爬虫(一)
- Python3爬虫笔记一
- python3 网络爬虫(一)反爬虫之我见
- python3 爬虫学习日记【一】
- (9)Python爬虫——下载PDF
- Python3爬虫(一)抓取网页的html
- Python3.6 爬虫初体验--urllib、beautifulsoup(一)
- python3 爬虫—爬取豆瓣电影图片(一)
- python3爬虫初探(一)之urllib.request
- 加载配置文件的四种方式
- “NODE_ENV” is not recognized as an internal or external command
- Linux下的图片编辑软件和画图软件
- c/c++整理析构函数
- C++笔记_03面向对象4
- Python3爬虫下载pdf(一)
- POJ 1986 RMQ+LCA
- 1.数码相框之框架
- 【Java】输入指定格式的邮箱(正则表达式)
- JAVA排序算法学习之路第二站-快速排序
- 并查集
- redis持久化
- FPB 2.0:免费的计算机编程类中文书籍 2.0
- C++笔记_04C++模版1