抓取微信公众号文章 (仅用做学习交流用途!!!)
pre: 没有用框架,直接clone 就可以用 基于 python 2.7 。使用3的话,根据 error 自行替换一下包即可
catch_allList.py
: 抓取 单个指定公众号url 😄
延伸:
dailydown.py
: 抓取配置的公众号列表,每日发布的文章列表 ✌️wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz
tar zvxf 1.5.5.tar.gz
cd pip-1.5.5/
python setup.py install
pip install --upgrade pip
pip install requests
pip install lxml
pip install BeautifulSoup
# Ubantu
apt-get install libmysqld-dev
easy_install MySQL-python
# Centos
yum install python-devel
yum install mysql-devel
pip install selenium
# 安装phantomjs 如果压缩包被墙,可以fq下载之后,再传到服务器,解压获得可执行文件路径,引入项目使用
http://phantomjs.org/download.html
wget -O phantomjs-2.1.1-linux-x86_64.tar.bz2 https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
# 使用webdriver.PhantomJS 抓取渲染后的Html
driver = webdriver.PhantomJS(executable_path='这里按各个系统写pha-js的执行路径',service_args=['--ignore-ssl-errors=true', '--ssl-protocol=tlsv1'])
driver.get(each)
page_source = driver.page_source
cd /home/wwwroot
git clone https://github.com/leon0204/catchWecaht.git
weixin
数据库 utf8mb4
cd catchWecaht
mysql -uroot -p weixin < ./weixin.sql
抓取公众号的列表在
weixin
数据库的subscription
表中
配置所需要用到的库,没有的用 pip
基本都可以满足
// 需要设置一下 dailydown.py 中的数据库设置
python dailydown.py
数据会存在 subcatch
表中
1 资源删除,热点抓取bug 修复
TODO
:
添加 phantomjs 支持 抓取 js 渲染页面
更新 dailydown.py 脚本 ,获取配置的公众号列表每日发布的所有文章列表