Python尝试爬取同花顺A股行情

77 篇文章 28 订阅
14 篇文章 3 订阅

尝试爬取,目前只提取了一部分数据。在数据存储上还是有问题,还未体现Python的间接性质。如果你有好的建议请留言或私信,谢谢。
下面的程序仅做参考,如果有时间再优化吧。

# -- coding: utf-8 -*-
"""
Created on Fri Oct 30 13:18:23 2020

@author: YuDi
"""

import requests
from lxml import etree
import xlwt
headers = {
     'User-Agent':'Mozilla/5.0'}
url = "http://q.10jqka.com.cn/"
response = requests.get(url,headers=headers)
content = response.content.decode('GBK')
html = etree.HTML(content)
result = []
res = html.xpath('//div[@id="maincont"]')
for re in res:
    names = re.xpath('.//table/tbody/tr/td/a/text()')
    nums = re.xpath('.//tbody/tr/td/text()')
#上面已经完成数据的提取
#下面就是数据的存储了,
workbook = xlwt.Workbook()
sheet = workbook.add_sheet("Agushit")
sheet.write(0,0,"代码")
sheet.write(0,1,"名称")
sheet.write(0,2,"序号")
sheet.write(0,3,"现价")
sheet.write(0,4,"涨跌幅")
sheet.write(0,5,"涨跌")    
sheet.write(0,6,"涨速")
sheet.write(0,7,"换手")
sheet.write(0,8,"量比")
sheet.write(0,9,"振幅")
sheet.write(0,10,"成交额")
sheet.write(0,11,"流通股")
sheet.write(0,12,"流通市值")
sheet.write(0,13,"市盈率")
for i in range(20):
    sheet.write(i+1,0,names[0])
    sheet.write(i+1,1,names[1])
    sheet.write(i+1,2,nums[0])
    sheet.write(i+1,3,nums[1])
    sheet.write(i+1,4,nums[2])
    sheet.write(i+1,5,nums[3])
    sheet.write(i+1,6,nums[4])
    sheet.write(i+1,7,nums[5])
    sheet.write(i+1,8,nums[6])
    sheet.write(i+1,9,nums[7])
    sheet.write(i+1,10,nums[8])
    sheet.write(i+1,11,nums[9])
    sheet.write(i+1,12,nums[10])
    sheet.write(i+1,13,nums[11])
    del names[0:2]
    del nums[0:12]
workbook.save('{}.xls'.format("A股"))

没有翻页所以数据,额有点少,没有任何的参考价值。

在这里插入图片描述
仅做参考,如果你有好的建议或者相关资料请留言或私信。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值