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

其实在电脑网页上也是可以查看公众号和公众号文章的。搜狗微信搜索是搜狗在 2014 年推出的一款针对微信公众平台而设立的。我试着在搜狗微信上搜索了下我的公众号「Python知识圈」可以搜到,搜索出来的文章只能展示最近发表的前 10 篇文章。

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

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

项目环境

语言:Python 3

编辑器:Pycharm

项目结构

本程序主要由几部分组成:

get_info():根据链接提取文章信息。

mkdir():创建储存信息的文件夹。

write2csv():将文章信息写入到 csv 文件中。

主函数:输入关键字,调用函数保存信息。

代码分析

浏览器打开搜狗微信,输入关键字搜索文章,点击下一页,观察页面链接的规律,去掉链接中无关信息后链接可简化为:(左右滑动查看全部)

Python

http://weixin.sogou.com/weixin?query=python&type=2&page=1

1

http://weixin.sogou.com/weixin?query=python&type=2&page=1

其中 query 表示搜索的关键字,type=2 表示搜索的类型是公众号文章,page 表示就是表示当前的页面数。

提取文章信息

由于公众号文章是动态加载的,我用了 selenium 库去获取页面信息。提取信息包括文章标题、文章链接、文章简介、发文日期。

储存目录

提供一个信息储存的目录,判断此目录是否存在,不存在的话就新建一个,并切换到此目录下。

保存信息

把上面方法返回的数据信息保存在 csv 文件中,保存的文件名称用输入的关键字,保存的时候以追加的形式 a 来保存数据,如果以 w 的话,分页保存的时候会覆盖掉前一页的数据。

主函数

输入关键字,执行时以关键字作为名称保存 csv 文件,总共 10 页,做一个循环,为了让页面信息全部加载出来,每页我设置了等待时间 1 秒。

全部源码可在我的微信公众号「Python知识圈」后台回复「文章」获取。

python 公众号爬虫_用Python爬虫爬取公众号文章相关推荐

  1. python爬虫学习笔记分析Ajax爬取果壳网文章

    有时在使用requests抓取页面会遇到得到的结果与在浏览器 中看到的结果不一样,在浏览器检查元素中可以看到的正常的显示的网页数据,但是requests请求得到的结果却没有.这是因为requests请 ...

  2. python公众号推荐 知乎_爬取公众号及知乎专栏文章的标题链接的方法汇总

    记一次最近的工作内容(奇怪的任务增加了)因为Python是去年接触并且没有过爬虫的实际学习操作,所以在出现"要收集文章标题链接"的任务是还是有点难以下手的.虽然有了解过爬虫可以方便 ...

  3. python爬b站评论_一个简单的爬取b站up下所有视频的所有评论信息的爬虫

    心血来潮搞了一个简单的爬虫,主要是想知道某个人的b站账号,但是你知道,b站在搜索一个用户时,如果这个用户没有投过稿,是搜不到的,,,这时就只能想方法搞到对方的mid,,就是 space.bilibil ...

  4. python爬取公众号阅读量_公众号没做起来,那是你菜 | 爬取21个公众号数据后

    一直有爬公众号数据的想法,奈何 python 技术不足搁置许久. 最近刚好找到了一款可以爬取公众号数据的工具,一顿操作爬了21个公众号.废话不多说,分析过程 loading -- 第一次更新时间 冯大 ...

  5. 爬虫技术python流程图_爬虫学多久能爬取大规模数据!神级程序员:这篇够你学一个月!...

    利用爬虫我们可以获取大量的价值数据,从而获得感性认识中不能得到的信息,比如: 在目标的驱动下,你的学习才会更加精准和高效.那些所有你认为必须的前置知识,都是可以在完成目标的过程中学到的.这里给你一条平 ...

  6. python爬虫携程酒店_携程酒店爬取分享

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import urllib.request from bs4 import BeautifulSoup import csv import re def ...

  7. python爬虫今日头条_python 简单爬取今日头条热点新闻(

    今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...

  8. 23个Python爬虫开源项目代码:爬取微信、淘宝、豆瓣、知乎、微博

    今天为大家整理了32个Python爬虫项目.整理的原因是,爬虫入门简单快速,也非常适合新入门的小伙伴培养信心,所有链接指向GitHub. 1.WechatSogou – 微信公众号爬虫 基于搜狗微信搜 ...

  9. python爬虫今日头条_python 简单爬取今日头条热点新闻(一)

    今日头条如今在自媒体领域算是比较强大的存在,今天就带大家利用python爬去今日头条的热点新闻,理论上是可以做到无限爬取的: 在浏览器中打开今日头条的链接,选中左侧的热点,在浏览器开发者模式netwo ...

  10. python爬取公众号文章如何获取发布时间

    python爬取公众号文章如何获取发布时间 在上一篇爬取公众号的文章中爬虫如何爬取微信公众号文章介绍了如何获取公众号的所有历史文章链接,但当我根据链接去爬取文章的时候,却遇到了一个小问题,就是文章的发 ...

最新文章

  1. 论文《一种金融市场预测的深度学习模型:FEPA》(3)--EMD+PCA
  2. Elasticsearch优化
  3. Java实现ftp的上传、下载和删除
  4. 趣学python3(1)-f前缀格式化字符串文本
  5. 玩英雄联盟手游,谁才是新手最喜欢的英雄?无极剑圣还是吗?
  6. Centos开机自己主动挂载windows中的ntfs磁盘
  7. 容器为何物,为什么它对OpenStack很重要?
  8. 信息学奥赛一本通 1084:幂的末尾 | OpenJudge NOI 小学奥数 7833
  9. has been blocked by CORS policy: No ‘Access-Control-Allow-Origin‘ header is present---nginx工作笔记006
  10. PubMedQA生物医学研究问题解答数据集(2019)下载
  11. Hdu2795Billboard线段树
  12. 数模2019暑期培训Day1
  13. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
  14. 4g网络设置dns地址_上网速度慢,修改一下win10系统的DNS设置,网速飙升
  15. 微信lbs开发java_【微信公众平台开发】之三:LBS的开发
  16. 如何在互联网上虚度人生?
  17. 机器视觉之工业摄像机知识点(二)
  18. Apache启动报错:Apache is running a threaded MPM
  19. RTSP 协议详细介绍
  20. /(^\s*)|(\s*$)/g

热门文章

  1. 众泰汽车难跨的2020
  2. JDBC原理及使用步骤
  3. 查看mysql连接数和状态
  4. 感悟《功夫熊猫》十五大经典对白 08.11.15
  5. 告诉你MSN,QQ,网页总掉线该怎么办
  6. 错误No qualifying bean of type
  7. C++ 个人通讯录管理系统(四)
  8. Linux-进程调度简介
  9. [附源码]JSP+ssm计算机毕业设计小学生心理健康评测网站m66d5【源码、数据库、LW、部署】
  10. 印刷服务交易网站靠什么吸引风投?