继续改进上一个项目,上次我们爬取了所有文章,但是保存为TXT文件,查看不方便,而且还无法保存文章中的代码和图片。
所以这次保存为PDF文件,方便查看。
需要的工具:
1、wkhtmltopdf安装包,下载并安装到电脑上,可使用 pip安装 ,注意环境变量的配置。具体参见下面的资料。
2、pdfkit文件(whl文件),下载并安装到pycharm上。
注意安装 whl 文件时:最好吧把 保存 whl文件的文件夹的路径 D:\learning python\Scripts 添加到环境变量里面,然后在此文件夹下打开cmd,直接 pip install XXX.whl 即可。
调用顺序:程序代码会使用pdfkit,pdfkit会调用wkhtmltopdf,而wkhtmltopdf会调用windows中的wkhtmltopdf.exe来转化html为pdf。
1、在我们原理项目的基础上,修改 get_body 方法,直接返回str(div),而不是div.text。
defget_body(url):"""获取url下文章的正文内容
:param url:
:return:"""html_page=get_html(url)
soup= BeautifulSoup(html_page,'html.parser') #HTML文档解析器
div = soup.find(id = "cnblogs_post_body")return str(div)
2、然后就是主要的下载方法了: