爬虫实例十二 沪深证券股票全站数据爬取

先上代码

import requests
from lxml import etree
import openpyxl
import time
import random

#新建workbook对象
wb=openpyxl.Workbook()
#创建正在操作的表
sheet = wb.active
#设置表头
sheet.append(['股票名称','股票代码','最新价','涨跌幅','涨跌额','成交量','成交额','今开','昨收','最高','最低'])

#遍历全站单页链接并解析数据
for p in range(0,100):
   url="https://hq.gucheng.com/HSinfo/XSHE/?en_hq_type_code=XSHE&sort_field_name=px_change_rate&sort_type=desc&page="+str(p)
   headers={
      "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"
   }
   html=requests.get(url=url,headers=headers).text
   time.sleep(random.randint(1,3))
   tree=etree.HTML(html)
   GP_name=tree.xpath("//tbody/tr/td[1]/a/text()")
   GP_number=tree.xpath("//tbody/tr/td[2]/a/text()")
   NEW_price=tree.xpath("//tbody/tr/td[3]/text()")
   UP_DOWN=tree.xpath("//tbody/tr/td[4]/text()")
   Rise_fall=tree.xpath("//tbody/tr/td[5]/text()")
   Turnover_one=tree.xpath("//tbody/tr/td[6]/text()")
   Turnover_two=tree.xpath("//tbody/tr/td[7]/text()")
   day=tree.xpath("//tbody/tr/td[8]/text()")
   yesterday=tree.xpath("//tbody/tr/td[9]/text()")
   hightly=tree.xpath("//tbody/tr/td[10]/text()")
   lowly=tree.xpath("//tbody/tr/td[11]/text()")
   # 将数据添加进列表
   datas=[]
   for j in range(0,len(UP_DOWN)):
      data=[GP_name[j],GP_number[j],NEW_price[j],UP_DOWN[j],Rise_fall[j],
            Turnover_one[j],Turnover_two[j],day[j],yesterday[j],hightly[j],lowly[j]]
      datas.append(data)
   for s in datas:
      sheet.append(s)
   wb.save('100页股票数据.xlsx')

目标网址:
https://hq.gucheng.com/HSinfo/XSHE/?en_hq_type_code=XSHE&sort_field_name=px_change_rate&sort_type=desc&page=3

在这里插入图片描述
这个网站跟房产排行一样也是没有动态加载,所以也是没啥难度,但数据用来做大数据练习还是不错的

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Python是一种功能强大的编程语言,可以用于多种用途,其中之一是web爬虫。tushare是一个专业的股票数据接口,可以提供各种市场数据,如股票、指数、基金、期货等等。 使用Python和tushare进行股票数据爬取非常简便。首先需要在Python中安装tushare库,然后import该库到Python环境中。 通过tushare库,可以调用它提供的不同方法,如get_h_data()获取历史股票数据,get_today_ticks()获取今天的交易明细信息,get_tick_data()获取分笔数据等等。 例如,如果要获取某股票的历史数据,可以使用如下代码: ```python import tushare as ts import pandas as pd # 设置股票代码和时间范围 code = '601318' start_date = '20210101' end_date = '20210630' # 调用tushare函数 df = ts.get_hist_data(code, start=start_date, end=end_date) # 查看数据 print(df.head()) ``` 这里获取的是中国平安(股票代码为601318)2021年1月1日至2021年6月30日的历史数据。获取的数据是一个pandas dataframe对象,可以使用各种数据处理和分析工具来操作和分析这些数据。例如,可以计算某个时间段内某个股票的均价、最大值、最小值等等,或者画出趋势图以及其他图表等等。 综上所述,通过tushare可以非常方便地获取股票数据,使用Python数据处理和分析工具,处理和分析这些数据,是进行量化投资和金融数据分析的重要工具。 ### 回答2: Python是一种广泛使用的编程语言,可用于各种项目和应用。其中,爬虫是Python的一项重要应用技能之一,它可以帮助我们收集和分析网络上的信息。Tushare是一种Python股票数据API,可以帮助我们从股票市场上获取数据。 借助Python和Tushare,我们可以编写一个简单的股票爬虫程序,获取股票市场上各种类型的数据。例如,我们可以获取股票实时信息、历史价格、股票基本面数据等等。具体来说,我们可以用Tushare获取股票历史价格数据,然后用Python进行分析和可视化,帮助我们更好地了解股票市场的趋势和变化。 使用Python和Tushare进行股票数据爬取有很多优势。首先,Python是一种易于学习和使用的编程语言,具有很高的编程效率和灵活性。其次,Tushare是一个非常丰富和完整的股票数据API,可以帮助我们快速获取各种类型的数据。此外,Python和Tushare的开源性和免费地使用,使得股票数据爬取成本极低。 总之,Python和Tushare结合可以提供一个灵活、高效、低成本的解决方案,帮助爬虫程序员获取股票市场上各种类型的数据。这些数据可以是有助于投资决策的行业趋势和股票基本面数据,也可以是有助于交易行为的实时价格和历史价格数据

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林中有神君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值