Python爬虫爬取公众号文章

点击上方"brucepk",选择"置顶公众号"

第一时间关注 Python 技术干货!

阅读文本大概需要 3 分钟。

经常有读者微信私聊我,问我有没有博客之类的,因为在手机上看公众号技术文章没有电脑上方便。确实,手机上看截图需要点击放大才能看得更清楚,代码也需要左右滑动才能看到全部。我的文章大部分都是首发于公众号,有时博客也会同步一份的。

其实在电脑网页上也是可以查看公众号和公众号文章的。搜狗微信搜索是搜狗在 2014 年推出的一款针对微信公众平台而设立的。我试着在搜狗微信上搜索了下我的公众号,发现通过公众号名称「brucepk」搜不到,可能是之前改过名称和公众号图片导致的吧。但是可以通过公众号的微信号搜索到,但是这样搜索出来的文章也只能展示最近发表的前 10 篇文章。

在搜狗微信上,我们也可以通过关键字去搜索公众号文章。每个关键字会查出 100 篇文章,每页显示 10 篇文章,分 10 页显示。

今天这篇文章我用 Python 爬虫爬取用关键字搜索出来的 100 篇文章并以 csv 文件的形式保存在本地。这篇文章代码比较简单,大佬不用往下看了,写此文的目的是为了大家在网页上更方便地阅读

Python 爬取公众号图片通常涉及到网络请求、HTML解析和文件存储等步骤。以下是基本的流程: 1. **安装所需库**: 首先需要安装 `requests` 库来进行 HTTP 请求,以及如 `beautifulsoup4` 或 `lxml` 进行 HTML 解析。 2. **发送请求**: 使用 `requests.get(url)` 获取公众号文章页面的 HTML 内容。记得检查网站是否允许爬虫访问,并遵守其robots.txt规则。 3. **定位图片元素**: 利用 BeautifulSoup 或其他解析库分析 HTML 结构,找到包含图片链接的元素。这通常是通过查找 `<img>` 标签并获取 `src` 属性来完成的。 ```python import requests from bs4 import BeautifulSoup url = 'https://mp.weixin.qq.com/s/<your_article_url>' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') images = soup.find_all('img', src=True) ``` 4. **保存图片**: 对于每个找到的图片链接,创建一个文件名(可能是基于URL生成),然后下载图片到本地。 ```python import os for img in images: img_url = img['src'] filename = os.path.join(os.getcwd(), os.path.basename(img_url)) with open(filename, 'wb') as f: response = requests.get(img_url, stream=True) for chunk in response.iter_content(1024): if chunk: f.write(chunk) ``` 5. **处理可能出现的问题**: - 有些网站可能会有防盗链机制,需要设置正确的User-Agent和Cookie。 - 分页爬取时,需要处理导航链接,递归或循环遍历。 - 注意版权和法律问题,尊重网站规定,合理使用爬取信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值