当前位置: 首页 > 后端技术 > Python

Python超简单爬取新浪微博数据(进阶版)

时间:2023-03-26 18:51:33 Python

新浪微博数据非常有价值,可以用来做数据分析,做网站,甚至*.但是由于技术的限制,很多人想用的时候只能通过复制粘贴等笨办法。没关系,现在就教大家批量爬取微博数据,大大加快数据迁移速度!我们使用的是第三方作者开发的爬虫库weiboSpider(有工具当然需要工具)。默认情况下,每个人都已经安装了Python。如果没有,可以阅读我们之前的文章:Python安装详解。1.下载项目并输入下面的网址,点击DownloadZIP下载项目文件https://github.com/dataabc/weiboSpider或者如果你有git,可以在cmd/terminal中输入以下命令安装git克隆https://github。com/dataabc/weiboSpider.git2.安装依赖解压项目zip包后,打开你的cmd/Termianl进入项目目录,输入如下命令:pipinstall-rrequirements.txt就会开始安装项目依赖,等待其安装完成。3、设置cookie打开weibospider文件夹下的weibospider.py文件,将“你的cookie”替换为爬虫微博的cookie。具体替换位置在weibospider.py文件的第22行左右。cookie的获取方式:3.1登录微博3.2页面空白处按F12或右键-勾选,打开开发者工具3.3选择网络-按F5刷新-选择第一个文件-找到cookie中的cookie右窗口并将其替换为aboutweibospider。py文件第22行的cookie如图:替换前:替换后:4.设置要爬取的用户user_id4.1获取user_id,点击要爬取的用户主页,然后勾选此时的url:you你会在链接中发现一串数字,这就是我们要用到的userID,复制即可。4.2设置要抓取的user_id打开config.json文件,会看到如下内容:{"user_id_list":["1669879400"],"filter":1,"since_date":"2018-01-01","write_mode":["csv","txt"],"pic_download":1,"video_download":1,"cookie":"你的cookie","mysql_config":{"host":"localhost","port":3306,"user":"root","password":"123456","charset":"utf8mb4"}}下面解释各个参数的含义和设置方法。设置user_id_list:user_id_list是我们要爬取的微博的id,可以是一个也可以是多个,比如:"user_id_list":["1223178222","1669879400","1729370543"],上面的代码表示我们要连??续抓取user_id为“1223178222”、“1669879400”、“1729370543”三个用户的微博。user_id_list的值也可以是文件路径。我们可以把所有要爬取的微博用户的user_id写成一个txt文件,然后把文件的位置路径赋值给user_id_list。txt文件中,每个user_id占一行,也可以在user_id后面加上注释(可选),比如用户昵称等信息,user_id和注释之间必须有一个空格,文件名任意,类型为txt,位置在这个程序的同目录下,文件内容示例如下:1223178222胡歌1669879400迪丽热巴1729370543郭碧婷如果文件名为user_id_list.txt,则user_id_list设置代码为:"user_id_list":"user_id_list.txt",如果需要,还可以设置Mysql数据库和MongoDB数据库写入,如果不设置,默认写入txt和csv文件。5、运行爬虫打开cmd/terminal进入项目目录,输入:pythonweibospider.py开始爬取数据,怎么样,是不是超级方便?并且还可以自定义爬取的信息,比如微博的开始时间,是否写入数据库,甚至可以根据它的代码添加新的功能!(比如添加cookie池或者代理池等)我们的文章到此结束。如果你今天想要我们的Python教程,请继续关注我们。如果对您有帮助,请在下方点个赞/观看哦,有什么问题可以在下方留言区留言,我们会耐心解答!Python实战宝典(pythondict.com)不只是一个合集欢迎关注公众号:Python实战宝典原文来自Python实战宝典:Python爬取新浪微博