互联网自动化采集脚本——爬虫
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网址崩溃或者错误
实例代码:
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) # 把新得到的数据汇总到总数据里面!
运行如下: