爬虫(一):东方财富股吧评论
2021/7/15 6:08:05
本文主要是介绍爬虫(一):东方财富股吧评论,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
**
爬虫(一):用Python获取东方财富股吧评论
**
第一次尝试爬虫,因为需要选择了东方财富股吧,需要的小伙伴可以一起来学习,首先声明一下,本人也是从b站学来了,第一次就是照葫芦画瓢,有样学样获取的。首先附一下视频连接吧,有需要的可以去看详细内容哦~时间也不是很长
https://www.bilibili.com/video/BV1oz4y1Z7pt?from=search&seid=12230486286090734478
库
需要用到的库有:etree,requests,pandas
requests:获取网页的
etree中的lxml:解析网页文档的
pandas:保存文档
所以呢,需要用到的小伙伴需要先将前两个库下载下来~
接下来就是敲代码了
代码上该有的注释都有了,这里我就不赘述了,想知道获取的详情可以看视频,他讲得很详细呢~
'''第一步:导入相关库''' from lxml import etree #解析文档 import requests #获取网页 import pandas as pd #保存文件
''' 需要保存的内容: 从股吧网页页面来看,有阅读量、评论量、标题、作者和时间 ''' max_page = int(input("请输入最大获取页面:") #最大爬取页面 all_reards = [] #爬取的阅读量存储在列表中 all_markers = [] #爬取的评论量存储在列表中 all_title = [] #爬取的标题存储在列表中 all_authors = [] #爬取的作者存储在列表中 all_time = [] #爬取的时间存储在列表中
headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64).......me/86.0.4240.198 Safari/537.36' }#构造头文件,这是模拟真人登录,为了防有反爬虫机制的
这里需要说明一下,这个User-Agent需要自己去网页上获取,上面的代码使用不了~~~获取步骤如下:
首先进入股吧网站,获得开发源代码(右键—>审查元素)
就会看到以下界面:
然后点击网络,将网页刷新一下,随便点击一个就行
点完之后,在右边寻找目标:
然后将其全部复制下来就好了~
'''构造循环爬取网页''' for page in range(1,max_page+1): print('craling the page is {}'.format(page)) url = f'http://guba.eastmoney.com/list,zssh000001_{page}.html' response = requests.get(url,headers=headers) #print(response.text) #可以尝试看一下出来的是什么东西哦 #break root = etree.HTML(response.text) #解析文档 ''' 获取文本数据 ''' readers = root.xpath("//div[contains(@class,'articleh normal_post')]//span[@class='l1 a1']//text()") markers = root.xpath("//div[contains(@class,'articleh normal_post')]//span[@class='l2 a2']//text()") title = root.xpath("//div[contains(@class,'articleh normal_post')]//span[@class='l3 a3']//a//text()") author = root.xpath("//div[contains(@class,'articleh normal_post')]//span[@class='l4 a4']//a//text()") puth_time = root.xpath("//div[contains(@class,'articleh normal_post')]//span[@class='l5 a5']//text()") all_reards += readers all_markers += markers all_title += title all_authors += author all_time += puth_time #print(title) #break
''' 将获得的数据保存下来 ''' data_raw = pd.DataFrame() data_raw["read"] = all_reards data_raw["mark"] = all_markers data_raw["title"] = all_title data_raw["author"] = all_authors data_raw["puth_time"] = all_time data_raw.to_excel("D:\\py学习文件\\data1.xls",index=False)
好了,这样就ok了~
这些只是评论标题,而且还有些被省略了,也不是我需要的终极目标数据,那怎样获取点击帖子后的全部文字呢?
学习路漫漫~~~学有所成再回来
(第一次写这种文章,希望有帮助 /xk)
这篇关于爬虫(一):东方财富股吧评论的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-06JS面试真题详解:新手必备的JavaScript面试指南
- 2024-11-06JavaScript大厂面试真题详解与实战指南
- 2024-11-05安全渗透学习入门指南
- 2024-11-05内存马学习:从入门到实践
- 2024-11-05初学者指南:渗透攻防学习入门教程
- 2024-11-05渗透技术学习入门指南
- 2024-11-05数据库服务漏洞学习指南
- 2024-11-05网络安全学习:新手入门指南
- 2024-11-05Web开发入门指南
- 2024-11-05初学者指南:理解和防范跨域漏洞