学习了爬虫基础、编码、正则表达式、selenium库之后,就可以正式进行我们的爬取了

一、爬取研报链接

# -*- coding:utf-8 -*-
import time
from selenium import webdriver#selenium库需要环境配置
import pandas as pd
date=[]
rating=[]
rating_change=[]
institution_name=[]
report_url=[]
driver=webdriver.Firefox()#模拟浏览器进行访问
driver.get("http://data.eastmoney.com/report/465yb_1.html#pageAnchor")#动态页面
def scrapy():for i in range(1,2):def get_data():date1=driver.find_elements_by_xpath("//div[@id='dt_1']//li[@class='date']")#通过xpath语法来爬取标签名[@属性名=""]#//代表之前为任意值for i in date1:date2=i.text#获取文本内容date.append(date2)time.sleep(2)#暂停一下,要不然会被封def get_institution():institution_name1=driver.find_elements_by_xpath("//div[@id='dt_1']//li[@class='reportObj']")for i in institution_name1:institution_name2=i.textinstitution_name.append(institution_name2)time.sleep(1)def get_rating():rating1=driver.find_elements_by_xpath("//div[@id='dt_1']//li[@class='ratingCat']")for i in rating1:rating2=i.textrating.append(rating2)time.sleep(2)def get_ratingChange():rating_change1=driver.find_elements_by_xpath("//div[@id='dt_1']//li[@class='ratingChange']")for i in rating_change1:rating_change2=i.textrating_change.append(rating_change2)time.sleep(3)def get_report_url():report_url1=driver.find_elements_by_xpath("//div[@id='dt_1']//li[@class='report']")for i in report_url1:g=i.find_elements_by_tag_name("a")#href="研报地址"在标签a里,为了获取研报链接,需要先获取标签名下的所有内容#再获取内容中的href属性内容,即下面的get_attribute("bref")for n in g:report_url2=n.get_attribute("href")report_url.append(report_url2)get_data()get_report_url()get_rating()get_ratingChange()get_institution()driver.find_element_by_link_text("下一页").click()#找到下一页的链接,并且点击date_Frame = pd.DataFrame({"日期":date,"评级":rating,"评级变动":rating_change,"机构名称":institution_name,"报告名称":report_url})date_Frame.to_excel("C:/Users/ceshi/Desktop/links.xlsx",index=False,encoding='gbk')#gbk编码,不显示index
scrapy()
##爬取出links文件

爬取后的数据是下面这样的:

二、根据(一)中的excel表格,爬取链接中的研报内容

from selenium import webdriver
import pandas as pd
import time
driver=webdriver.Firefox()
data=pd.read_excel(r"C:\Users\ceshi\Desktop\Code and table\links.xlsx")
contents=[]
def get_contents():for url in data['报告名称']:driver.get(url)#爬取内容,去除空行,没有strip("")的话,excel会出现大量空行content=driver.find_element_by_xpath("//div[@class='newsContent']").text.strip("")contents.append(content)time.sleep(1)data_Series=pd.DataFrame({'报告内容':contents})data_Series.to_excel("C:\Users\ceshi\Desktop\Code and table\contents_all.xlsx",columns=["报告内容"],index=False,encoding='gbk')
#将爬取的links1的内容导入contents里
get_contents()

三、合并成一个表

import pandas as pd
f1=r"C:\Users\ceshi\Desktop\Code and table\links.xlsx"#注意前面+r:忽略转义字符
f2=r"C:\Users\ceshi\Desktop\Code and table\contents_all.xlsx"
f=[f1,f2]
li=[]
for i in f:li.append(pd.read_excel(i))
writer= pd.ExcelWriter(r'C:\Users\ceshi\Desktop\Code and table\merge.xlsx')
pd.concat(li,axis=1).to_excel(writer,'sheet1',index=False)
writer.save()

输出如下:

至此,我们需要的数据就爬取完毕了,下面的一章将运用机器学习进行情感评分,会引用一些原理推导的好文章,需要请自取。

纯小白Python爬取东方财富网研报内容并通过机器学习的SVM模型进行文本分析(四)相关推荐

  1. python爬取东方财富网资金流向数据(在本地生成csv文件)

    今天我们来试着用python爬取东方财富网资金流向的表格数据. 第一步:程序及应用的准备 首先我们需要安装selenium库,使用命令pip install selenium;然后我们需要下载对应的c ...

  2. 利用python爬取东方财富网股吧评论并进行情感分析(一)

    利用python爬取东方财富网股吧评论(一) python-东方财富网贴吧文本数据爬取 分享一下写论文时爬数据用到的代码,有什么问题或者改善的建议的话小伙伴们一起评论区讨论.涉及内容在前人的研究基础之 ...

  3. 爬虫学习笔记(用python爬取东方财富网实验)

    参考文章以及视频:(11条消息) 爬虫实战 | 爬取东方财富网股票数据_简说Python的博客-CSDN博客.手把手教你从东方财富网上获取股票数据_哔哩哔哩_bilibili.[Python爬虫案例] ...

  4. python爬取东方财富网中的资金流向表

    因为东方财富网中的资金流向表是一个动态的数据,所以采用selenium模块进行爬取. 爬取东方财富网的资金流向表的具体步骤: 1.获取初始的URL 2.爬取对应的URL地址的网页,获取新的URL地址 ...

  5. 使用python爬取东方财富网机构调研数据

    最近有一个需求,需要爬取东方财富网的机构调研数据.数据所在的网页地址为: 机构调研 网页如下所示: 可见数据共有8464页,此处不能直接使用scrapy爬虫进行爬取,因为点击下一页时,浏览器只是发起了 ...

  6. python培训机构调研最多的股票_使用python爬取东方财富网机构调研数据

    标签: 最近有一个需求,需要爬取东方财富网的机构调研数据.数据所在的网页地址为: 机构调研 网页如下所示: 可见数据共有8464页,此处不能直接使用scrapy爬虫进行爬取,因为点击下一页时,浏览器只 ...

  7. python财务报表分析-用Python爬取东方财富网上市公司财务报表

    ♚ 作者:苏克,零基础.转行python爬虫与数据分析 博客:https://www.makcyun.top 摘要: 现在很多网页都采取JavaScript进行动态渲染,其中包括Ajax技术.有的网页 ...

  8. 用python爬取东方财富网网页信息_爬取东方财富网数据的网页分析

    自学Python已有3个月之多,浏览无数大神的佳作,收获颇丰.当初自学python就是为了学习爬虫,爬取网站上好看妹子的图片--[流口水][流口水] 言归正传,近期学习量化交易知识,发现东方财富网(e ...

  9. Python爬取东方财富网任意股票任意时间段的Ajax动态加载股票数据

    导言 最近由于需求想爬取以下东方财富网的股票数据,但是发现没有想象那么简单,接下来我会讲述一下我遇到的问题以及是如何解决,最后成功的爬出了想要的数据. 查看网页源码 首先我们F12打开东方财富网网页源 ...

  10. python爬取东方财富网,并将数据导入mysql

    1.首先使用xpath获取网页中的表格数据,需要下载谷歌及与之版本相同的相关程序, 链接如下:ChromeDriver Mirror 我下载的正好是压缩过后就是如下程序: 2.然后就是连接mysql数 ...

最新文章

  1. Linux音频设备驱动
  2. 计算机书籍-老年人编程自学书籍
  3. 3月 致 -.-- -..- -
  4. Thinkphp3.2学习(一)
  5. lightroom安卓_安卓可以用的一款PS
  6. centos系统所需软件
  7. 让软件不在添加删除程序_功能强大却鲜为人知的四款软件,一但发现就无法自拔...
  8. JSP过滤器Filter配置过滤类型汇总
  9. UI学习笔记---EasyUI panel插件使用---03
  10. unity3d人物跳_Unity3D研究院之角色控制器组件研究(二十二)
  11. Springboot集成SpringSecurity 附代码
  12. 每天一点正则表达式积累之(?=X)和(?!X)测试(七)
  13. 【分布式架构之旅 理论篇】数据库分库分表
  14. SNAP 4. 使用snap进行地物光谱分析
  15. 石乙己——孔乙己程序员版
  16. 阿里副总裁玄难:藏经阁计划首次在阿里应用落地
  17. 知道ip获取计算机密码,知道iP地址怎么获取密码
  18. 用R语言对网络数据进行统计分析(四)
  19. Android viewpager+fragment实现无限滚动,左右有前/后一页的部分,并fragment显示的内容是activity传过去的数据
  20. IPHONE黑解教程

热门文章

  1. discuz X2中template文件夹中模板文件目录
  2. 【黑客帝国数字雨】学习总结
  3. mysql5.6 relay.info_Relay log 导致复制启动失败
  4. 传统数据与大数据对比
  5. 基于python的电影在线_利用python实现电影推荐
  6. python编程用什么软件-python用什么软件编写
  7. 清北学堂-D1-T1-alien
  8. 云计算与虚拟化技术发展编年史
  9. Oracle(11g)数据库教程之三:SQL Developer 及 SQL *Plus操作数据库
  10. 杭电复试2018年笔试第三题--西瓜地(最小生成树)