建站教程pdf,用python爬取pdf数据

经常在网上看电子书,是PDF版的,(如下图是其中一本书)有一个很麻烦的问题是每次都要在浏览器上一页页查看。

于是就在想能否直接把整本书爬取下来,以方便查看。

用Python从网站中爬取PDF电子书实例,简单一看就懂

于是研究了一下这个网站,发现有几个特点:

1.这个网站只要登录进去就可以随意查看里面的任何书,每本书都有一个特定的代码,如上图的这本书的代码是:L2YXg

用Python从网站中爬取PDF电子书实例,简单一看就懂

对应到单个PDF文件的链接是:http://xmlib.chineseall.cn/v3/book/content/L2YXg/PDF/100

L2YXg是这本书的代码,100是当前的页码,每一PDF文档对应一个页码,因此只需循环打开每一页的网址,将PDF下载下来即可。

2.更方便的是,只要有了这个PDF文件的链接,就算在不登录的情况下,也照常可以打开这个网页。

有了以上这两个条件。只需要获取书的代码,书的总页数,剩下的只需要简单写一个代码,就可以在短时间内把这本书的PDF版下载到电脑。

代码如下:

import requestsimport timedef get_pdf(book_code,pages,sleep_time,path):    for i in range(1,pages+1):        url = 'http://xmlib.chineseall.cn/v3/book/content/{}/PDF/{}?activity=0'.format(book_code,i)        response = requests.get(url)        filename = path+'\{}.pdf'.format(i)        with open(filename,'wb') as f:            f.write(response.content)        print('第'+str(i)+'个pdf下载完成')                time.sleep(sleep_time)        if __name__=='__main__':    book_code = input('请输入书的代码:')    pages = int(input('请输入书的总页数:'))    sleep_time = int(input('请输入间隔的秒数:'))    path = input('请输入书存放的路径:')    get_pdf(book_code,pages,sleep_time,path)

代码中设置了间隔时间,不赶时间的话,间隔时间输入长一些,以免给网站带来压力。

运行输入书的代码等信息之后,PDF就自动一页一页自动存放到指定的文件夹当中。结果如下图所示,截图时下载到第8页。

用Python从网站中爬取PDF电子书实例,简单一看就懂

是不是很简单。

本文来自网络,不代表iinz-K站-K站资源下载,最全,最新资源福利立场,转载请注明出处:https://www.iinz.net/76912.php

作者: AZ123

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部