关键字爬取公众号最新文章

写在开头

之前一篇文章实现了爬取公众号历史文章,这篇实现通过关键字爬取最新的文章,这样做的目的是:两篇加起来做到获取和维护更新,特别是弄成自动化脚本的话,就只需要检查数据就行,还是为了节省时间,不想做重复无聊的事情;

简单记录下代码。

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from bs4 import BeautifulSoup
from selenium import webdriver

# 火狐的驱动, 因为只需要最新的, 因此不需要登陆, 登陆的方法之前的文章也有介绍
opt = webdriver.FirefoxOptions()
# 设置无界面, 不然每次都会打开浏览器
opt.add_argument("--headless")
driver = webdriver.Firefox(options=opt)

keyword = '20220218冬奥会'
url = 'https://weixin.sogou.com/weixin?query='+keyword+'&s_from=input&_sug_=y&type=2&page='+str(page_number)+'&ie=utf8'
driver.get(url)

# 选取检索到的第一个链接
driver.find_element_by_xpath('//*[@id="sogou_vr_11002601_title_%s"]'%0).click()
soup = BeautifulSoup(driver.page_source, "html.parser")
# 跳到因为点击打开的第二个窗口
driver.switch_to.window(driver.window_handles[1])
# 标题
title = soup.find(id = "activity-name").get_text().strip()
# 发布时间
time = soup.find(id = "publish_time").get_text().strip()
# 公众号
name = soup.find(id = "js_name").get_text().strip()
# 文章内容内容,拿到内容后直接用正则匹配获取自己想要的文本内容就行
content = soup.find(id = "js_content").get_text().strip()
# 关闭浏览器释放资源
driver.quit()

参考链接

基于另类数据对ETF进行回测
一年前看过某个公众号的某个文章,但是我忘了…
python+selenium+firefox使用与部署详解
python爬取搜狗微信指定关键词的全部内容_一条小黑龙的博客-CSDN博客

写在后边

整理笔记的时候翻到了 19 年在北京的时候写的一句话,在租的房子里,保洁阿姨在打扫客厅,我在房间里工作:

2019年8月17日 下午12:29
门外阿姨在工作,我也在工作.. 大家都在生活着;

现在也是这样,生活继续着… 时间越来越不够用的样子
2022年2月20日 下午6:01

(✪ω✪)