Python 基金爬虫
基于python,实现简单的爬取基金净值的爬虫
基于python的requests和进程池实现了简单的基金数据爬取脚本:
import requests
from multiprocessing.dummy import Pool
from time import sleep
import prettytable as pt
tb = pt.PrettyTable()
tb.field_names = ['name', '基金编号', '净值', '净值估算', '估算涨幅', '时间']
def get_fund_info(fund_code):
# fund_code:基金编号
headers = {"User_Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36'}
url = f'http://fundgz.1234567.com.cn/js/{fund_code}.js?rt=1613977070725'
res = requests.get(url=url, headers=headers)
ttjj_json = eval(res.text[8:-2])
tb.add_row([ttjj_json['name'], fund_code, ttjj_json['dwjz'], ttjj_json['gsz'], ttjj_json['gszzl'] + '%', ttjj_json['gztime']])
sleep(0.5)
return
# 基金代码列表
fund_code_list = [ '005827', '501009', '003095', '163406']
pool = Pool(6)
pool.map(get_fund_info, fund_code_list)
pool.close()
pool.join()
print(tb)
运行结果: