# weibo_spider
独立开发的关于微博信息爬虫的项目。
## 一、项目总览
1、开发环境:
- python 3.6
- mysql 5.6
- 所需依赖:re datetime requests BeautifulSoup pymysql
2、现阶段已经实现了四个基本功能:<br>
- 根据搜索的关键字和起始时间条件搜索微博,对微博的信息进行爬取。<br>
- 获取(1)中通过关键字搜索出的各个微博的用户ID,并进行去重操作,爬取各个用户的基本信息。<br>
- 获取(1)中通过关键字搜索出的各个微博的微博ID,并进行去重操作,通过微博ID获取此微博下的全部评论信息。<br>
- 仅通过某个微博用户ID爬取此ID的全部微博内容。<br>
3、接口说明: <br>
① 根据关键字和时间条件进行搜索:https://s.weibo.com/weibo?q={}&typeall=1&suball=1×cope=custom:{}:{}&Refer=g&page={} <br>
② 根据搜索出的每个微博对应的用户ID爬取用户基本信息:https://weibo.cn/{}
③ 仅根据某个用户ID爬取他的全部微博内容:https://weibo.cn/{}?page={}
<br>
<br>
## 二、项目结构介绍
search_spider - 根据关键字和时间进行爬取的模块 -<br>
----hour_fenge.py 时间分隔函数:对要搜索的时间期限进行以每小时为单位的划分,返回包含所有时间单位的列表<br>
----search_start.py 根据关键字和时间条件进行爬取的主要函数:其中包括爬取某页全部微博、微博所有页数的计算、保存数据库等功能<br>
tools - 工具模块 -<br>
----Config.cfg 数据库等配置文件
----Cookie_Process.py cookie处理函数:其中包括获取文件中存储的cookie、更新文件中存储的cookie等功能<br>
----Date_Process.py 时间处理函数:其中包括对爬取到微博的不同时间格式进行统一 <br>
----Emoji_Process.py 表情处理函数:清除掉包含的utf8bm4编码格式的表情 <br>
----Mysql_Process.py mysql数据库工具类:其中包括数据库连接、关闭、增删改查的操作等<br>
----Number_Process.py 转发、评论数处理函数:对爬取到的微博的转发、评论数进行统一<br>
user_spider - 爬取根据关键字搜索到的微博对应的微博用户的基本资料模块 -<br>
----cookie.file 存储可用的cookie信息<br>
----user_start.py 爬取用户资料的主要功能函数:包括获取所爬取微博的所有用户ID,并根据每个ID爬取其基本信息<br>
weibo_spider - 根据某个用户ID爬取其所有微博的模块 -<br>
-----cookie.file 存储可用的cookie信息
-----weibo_start.py 爬取用户全部微博的主要功能函数:其中包括爬取某页全部微博、微博所有页数的计算、保存数据库等功能<br>
comment_spider - 爬取根据关键字搜索到的微博对应的微博下的全部评论-<br>
----cookie.file 存储可用的cookie信息<br>
----comment_start.py 爬取微博评论的主要功能函数:包括获取所爬取微博的所有微博ID,并根据每个ID爬取其全部评论信息<br>
<br>
<br>
## 三、项目使用介绍
Ps:三个模块的功能相互独立,可直接运行 *_start.py 函数使用<br>
1、根据关键字和时间进行爬取的模块:<br>
- 此模块不需要登录,也不需要获取cookie,可直接运行search_start.py使用<br>
2、爬取根据关键字搜索到的微博对应的微博用户的基本资料模块:<br>
- 此模块需要获取cookie,cookie存于目录下的cookie.file中,<br>
- 手动获取cookie的操作如下:必须使用谷歌浏览器,登录https://weibo.cn/,登陆成功后将网页地址统一成https://weibo.cn/,打开谷歌浏览器开发工具,选择network,点击weibo.cn,查看Request Headers中的Cookie
- 直接运行user_start即可使用,运行时输入要爬取的评论的微博关键字,运行时会提示是否更新cookie,如不更新,输入n/N即可
3、爬取根据关键字搜索到的微博对应的全部评论:<br>
- 此模块需要获取cookie,cookie存于目录下的cookie.file中,<br>
- 获取cookie操作同上
- 直接运行commentr_start即可使用,运行时输入要爬取的评论的微博关键字,会提示是否更新cookie,如不更新,输入n/N即可
4、 根据某个用户ID爬取其所有微博的模块<br>
- 此模块需要获取cookie,cookie存于目录下的cookie.file中<br>
- 获取cookie操作同上
- 直接运行weibo_start.py即可使用<br>
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。
资源推荐
资源详情
资源评论
收起资源包目录
☀️ 基于Python3的微博爬虫项目,含有按关键字和时间进行微博信息爬取、微博用户资料爬取、微博评论爬取等功能。.zip (29个子文件)
SJT-code
tools
Cookie_Process.py 608B
__init__.py 0B
Number_Process.py 190B
Date_Process.py 691B
Config.cfg 107B
__pycache__
Cookie_Process.cpython-37.pyc 749B
Mysql_Process.cpython-37.pyc 2KB
Emoji_Process.cpython-37.pyc 406B
__init__.cpython-37.pyc 131B
Date_Process.cpython-37.pyc 622B
Number_Process.cpython-37.pyc 356B
Mysql_Process.py 2KB
Emoji_Process.py 270B
comment_spider
__init__.py 0B
comment_start.py 6KB
cookie_file 1B
LICENSE 11KB
user_spider
__init__.py 0B
user_start.py 6KB
cookie_file 1B
search_spider
__init__.py 0B
hour_fenge.py 5KB
search_start.py 5KB
__pycache__
hour_fenge.cpython-37.pyc 2KB
__init__.cpython-37.pyc 139B
README.md 4KB
weibo_craw
weibo_start.py 6KB
__init__.py 0B
cookie_file 1B
共 29 条
- 1
JJJ69
- 粉丝: 6352
- 资源: 5918
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页