由于微信公众号文章通常有反爬虫机制,直接爬取可能会遇到一些问题。但是,如果你仍然想尝试,可以使用Python的requests
库来获取文章内容,然后使用pdfkit
或wkhtmltopdf
来将HTML内容转换为PDF。
安装依赖库
pip install requests pip install pdfkit
你还需要安装wkhtmltopdf
,这是一个命令行工具,用于将HTML内容渲染为PDF。你可以从这里下载。
代码示例
import requests import pdfkit # 获取微信公众号文章的HTML内容 def fetch_article(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537' } response = requests.get(url, headers=headers) return response.text # 将HTML内容保存为PDF def save_as_pdf(html_content, pdf_path): pdfkit.from_string(html_content, pdf_path) # 主程序 if __name__ == "__main__": url = "https://mp.weixin.qq.com/s?src=11×tamp=1692533419&ver=4724&signature=ExpEZRD8Vlu2dvXYXe783C8ko2hRUi6L0vpDlSsIx9sNMKQXLptdyn04DhfrfrDNgO309npwV5wDwldWrmc9Tw0c3H0Vxy0577Ac178q6cQfrCK9wXn6wlI67P2v7JEr&new=1" html_content = fetch_article(url) pdf_path = "article.pdf" # xpanx.com: 使用pdfkit和wkhtmltopdf将HTML内容转换为PDF save_as_pdf(html_content, pdf_path)
基础知识解释
- requests库: 用于发送HTTP请求以获取网页内容。
- pdfkit库和wkhtmltopdf: 用于将HTML内容转换为PDF。
- User-Agent: 在请求头中设置User-Agent,以模拟浏览器行为。
请注意,这个示例可能不会完全成功,因为微信公众号通常有反爬虫机制。在实际应用中,你可能需要更复杂的方法来绕过这些限制。同时,请确保你遵循网站的使用条款和政策。希望这能帮助你解决问题!
https://xpanx.com/
评论