【Python项目】爬取新浪微博签到页
基于微博签到页的微博爬虫
项目链接:https://github.com/RealIvyWong/WeiboCrawler/tree/master/WeiboLocationCrawler
1 实现功能
这个项目是用来爬取微博签到页的微博数据(每三个小时爬一次),并写进sqlite数据库。
关于微博签到页打个比方,就是类似这个https://weibo.com/p/100101B2094757D069A7FE449F

顺便一说,这个页面是不用微博登录就可以访问的。所以方便很多啊(不用模拟登录)。
2 依赖环境
使用的是Python 3.7(在云上用过3.5也完全ok)。
需要额外的第三方库有yagmail(用来发送邮件),pandas,bs4。均可使用pip来安装。
pip install yagmail pandas bs4
3 使用方法
step1. 修改pid.csv中的地点名词与对应的id。
step2. 修改start.py中的邮箱账号密码。
step3. Run start.py。
4 文件说明
包含四个文件。
pid.csv
是放置地点的名称和微博页面对应的位置id。比如说上面的珞珈山,就是网页URL最后的那一串数字100101B2094757D069A7FE449F。
buildip.py
是在网上看到别人写的……具体忘了哪的,如果本尊看到!sorry!请联系我注明!
我稍微修改了下。这个文件是一个实现爬取代理网站上的代理IP来构建代理池的模块。
crawler.py
爬虫本体。
start.py
控制爬取多个地点的一个启动文件。
5 爬取示例
如果开始成功运行之后,控制台输出大概是这样的。先获取代理ip(这可能需要10分钟左右?)。

然后获取完代理就一个一个地点开始爬,像这样。

这个页数是由那个签到点的微博数定的,如果很冷门,可能就十几页甚至几页。当然,最多新浪只会让我们爬150页,所以不是这个签到点的所有数据都能爬到。
得到的weibo.sqlite结构是包含三个表,weibo表(用来存储微博具体的信息)、pic表(用来存储微博图片的url,因为一条微博可能有多张图)和picweibo表(建立pic的id和weibo的id的联系的表)。



6 Contact Me
如果有什么Bug,或者改进建议。
请联系我!(924154233@qq.com)
【Python项目】爬取新浪微博签到页的更多相关文章
- [Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)
转载自:http://blog.csdn.net/eastmount/article/details/51231852 一. 文章介绍 源码下载地址:http://download.csdn.net/ ...
- python爬虫项目-爬取雪球网金融数据(关注、持续更新)
(一)python金融数据爬虫项目 爬取目标:雪球网(起始url:https://xueqiu.com/hq#exchange=CN&firstName=1&secondName=1_ ...
- 利用Python爬虫爬取淘宝商品做数据挖掘分析实战篇,超详细教程
项目内容 本案例选择>> 商品类目:沙发: 数量:共100页 4400个商品: 筛选条件:天猫.销量从高到低.价格500元以上. 项目目的 1. 对商品标题进行文本分析 词云可视化 2. ...
- Python 002- 爬虫爬取淘宝上耳机的信息
参照:https://mp.weixin.qq.com/s/gwzym3Za-qQAiEnVP2eYjQ 一般看源码就可以解决问题啦 #-*- coding:utf-8 -*- import re i ...
- 一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...
- python大规模爬取京东
python大规模爬取京东 主要工具 scrapy BeautifulSoup requests 分析步骤 打开京东首页,输入裤子将会看到页面跳转到了这里,这就是我们要分析的起点 我们可以看到这个页面 ...
- python爬虫--爬取某网站电影信息并写入mysql数据库
书接上文,前文最后提到将爬取的电影信息写入数据库,以方便查看,今天就具体实现. 首先还是上代码: # -*- coding:utf-8 -*- import requests import re im ...
- python爬虫--爬取某网站电影下载地址
前言:因为自己还是python世界的一名小学生,还有很多路要走,所以本文以目的为向导,达到目的即可,对于那些我自己都没弄懂的原理,不做去做过多解释,以免误人子弟,大家可以网上搜索. 友情提示:本代码用 ...
- Python+Selenium爬取动态加载页面(2)
注: 上一篇<Python+Selenium爬取动态加载页面(1)>讲了基本地如何获取动态页面的数据,这里再讲一个稍微复杂一点的数据获取全国水雨情网.数据的获取过程跟人手动获取过程类似,所 ...
随机推荐
- 安装pycharm软件后,打开robot framework怎么默认用pycharm打开
1.打开ride.py的属性,修改打开方式
- Python排序算法动态图形化演示(实现代码)
1.冒泡排序 冒泡排序是最简单也是最容易理解的排序方法,其原理就是重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是 ...
- vue自动路由-单页面项目(非build时构建)
博客中自动路由的原理? 答:简单点说,就是在请求页面时,根据url进行动态添加路由. 与其它自动路由博客的区别? 目前网上的博客,一般都是在build的时候进行动态路由添加,而本博客,采用的是在获得u ...
- 【原创】centos6创建sftp账号,并设置权限和目录
网上找了个教程,折腾好长时间都不行,最后往死里整,终于弄好了,记录一下. 系统环境:Centos6.9 64bit 完美解决: Permission denied (publickey,gssapi- ...
- 转:关于python文件操作大全
转自:http://www.cnblogs.com/rollenholt/archive/2012/04/23/2466179.html python中对文件.文件夹(文件操作函数)的操作需要涉及到o ...
- 遇到问题----java----myeclipse或者eclipse发布的项目时配置文件不更新或者无配置文件
myeclipse或者eclipse发布的项目时配置文件不更新或者无配置文件. 正常的web项目有目录 src/main/resources 和 src/main/java 这两个目录默认在编译发布时 ...
- bzoj 3611: [Heoi2014]大工程 && bzoj 2286: [Sdoi2011消耗战
放波建虚树的模板. 大概是用一个栈维护根节点到当前关键点的一条链,把其他深度大于lca的都弹出去. 每次做完记得复原. 还有sort的时候一定要加cmp!!! bzoj 3611 #include&l ...
- Docker 基础知识
Docker Docker 是什么 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是 ...
- day7 方法及基础知识运用
做了一个小型的成绩管理系统.主要代码如下: /* * 功能:简易学生成绩管理系统 */package day7; import java.util.Scanner; public class Home ...
- Elasticsearch5.2.0部署过程的坑
今天开工,在看ES时候发现前几天已经发布了5.2.0,就安装了一下,岂料安装完一直启动不了,可以说是一个bug. 报错: ERROR: bootstrap checks failed system c ...