数据分析之数据收集

互联网自动化采集脚本------爬虫
1.什么是自动化采集的脚本 - 网络爬虫 网络蜘蛛 网络机器人

自动采集网站上我们需要的数据。

2.如何批量采集数据

爬虫:请求某一个网站的数据

(1)确定目标:请求哪一个网址?

如下是:东方财富网,实战-大A股5000+股票实时批量抓取

行情中心:国内快捷全面的股票、基金、期货、美股、港股、外汇、黄金、债券行情系统_东方财富网 (eastmoney.com)

url = '网址'

F12或者Fn+F12打开开发者工具 - Network(网络) - 刷新网页

放大镜里面搜索股票关键字 - 点击出现的数据 - headers里面有网址

(2)伪装脚本, 伪装成一个浏览器!

headers={'user-agent':'浏览器标识'}
注意: 浏览器标识就在刚才找到的网址的下面。

(3)请求网址的数据

res = requests.get(url, headers)

模块使用方法:数据=模块.功能(参数)

requests 功能get 给定网址和身份 返回给我们数据

res.text res.content res.status_code

其中:403 拒绝 404 网址不存在 500网址崩溃或者错误

实例代码:

python 复制代码
import requests   # 请求模块
import pandas     # 表格模块
import re         # 筛选模块 -- 正则表达式! python自带!
totaldata = []
for pn in range(1, 282):
    # ==============获取数据==================
    url = f'https://64.push2.eastmoney.com/api/qt/clist/get?cb=jQuery112408356224630673301_1715256225019&pn={pn}&pz=20&po=1&np=1&ut=bd1d9ddb04089700cf9c27f6f7426281&fltt=2&invt=2&wbp2u=|0|0|0|web&fid=f3&fs=m:0+t:6,m:0+t:80,m:1+t:2,m:1+t:23,m:0+t:81+s:2048&fields=f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f12,f13,f14,f15,f16,f17,f18,f20,f21,f23,f24,f25,f22,f11,f62,f128,f136,f115,f152&_=1715256225020'
    headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0'}
    res = requests.get(url, headers)
    print(res.text)

    # ================筛选数据===============
    codelist = re.findall('"f12":"(.*?)","f13"', res.text)
    namelist = re.findall('"f14":"(.*?)","f15"', res.text)
    pricelist = re.findall('"f2":(.*?),"f3"', res.text)

    # =============重新组合数据================
    for i in range(0, len(codelist)):
        datalist = [codelist[i], namelist[i], pricelist[i]]
        print(datalist)
        totaldata.append(datalist)  # 把新得到的数据汇总到总数据里面!

运行如下:

相关推荐
懂点Tech6 小时前
ctfshow misc28:GIF 高度修改解题与脚本实现
开发语言·windows·python
comedate6 小时前
SMLib 的 Examples 导读:PyAPI / SM_API / SMLib 三组示例怎么读
python·cad·smlib·examples·sm_api
云和数据.ChenGuang6 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
川石课堂软件测试7 小时前
学习软件测试需掌握的一些知识
数据库·python·sql·功能测试·网络协议·mysql·http
万化冥合7 小时前
PyBox屏幕键盘如何辅助演示键盘操作?
python·计算机外设
车软学堂7 小时前
从测试转开发,到底要补什么
网络·人工智能·python·功能测试·单片机·车载系统·自动化
天空依然蔚蓝7 小时前
分享一个自动检测网站在线状态的python程序
python·运维开发·1024程序员节
岁月宁静8 小时前
一个 AI 项目从本地到上线,要经过哪些步骤?全流程讲清楚
python·docker·agent
codists9 小时前
《crafting interpreters》阅读笔记:p45-p45
python
曲径海盗10 小时前
【Python 学习第 41 天】for 循环
python·学习笔记·编程入门