from bs4 import BeautifulSoup as bs
import requests
import csv
import time
url='https://xueqiu.com/service/v5/stock/screener/quote/list'
list=[]
for i in range(1,51):
headers = {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh-CN,zh;q=0.9', 'Cache-Control': 'no-cache', 'Connection': 'keep-alive', 'Cookie': 'xq_a_token=f257b9741beeb7f05f6296e58041e56c810c8ef8; xqat=f257b9741beeb7f05f6296e58041e56c810c8ef8; xq_r_token=2e05f6c50e316248a8a08ab6a47bc781da7fddfb; xq_id_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTYyNjQwMzgwNSwiY3RtIjoxNjIzOTg4MDE4MjU0LCJjaWQiOiJkOWQwbjRBWnVwIn0.XibuygQKtv6Zyb6Rv6zkYB9Ly7LjwTQjTDW6bo274Ka11w0CumGW0Aqj1JrBEDJS6BSxp8mrVaPdqsOpSEdhynNVZtzbQmI_BSMugdp23dFbdM6ZNQfN8hpK4ngnk80l4Afn83D2tiTx1rwSKpyZDyVIVchl00SSg9QSbMjAo8SQpJZtO_Bt4n_4scHyZ4ISqBpQELmajZDwu7weWQ49_4-vLBPlV6_PiXeyuBPDGMN1aYGWvXcK4qRbYuUV5tF17PeN6IjpBBwqdZUj6OankyiciWINrvMmb6Tc2qO64ZZ720-HBBlykcSlz6eVbr5j7DuzESZH5gDXI94m85e7Hw; u=681623988074112; Hm_lvt_1db88642e346389874251b5a1eded6e3=1623988076; device_id=b1be9f05e4efd1959319cef47929d4eb; s=cs15ogq2xe; __utmc=1; __utmz=1.1624002512.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); acw_tc=2760820616242839675355802eacc934519843b161a74f7fa41ada0161c9e9; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1624285223; __utma=1.1811685796.1624002512.1624002512.1624285223.2; __utmt=1; __utmb=1.1.10.1624285223', 'Host': 'xueqiu.com', 'Pragma': 'no-cache', 'Referer': 'https://xueqiu.com/hq', 'sec-ch-ua': '" Not;A Brand";v="99", "Google Chrome";v="91", "Chromium";v="91"', 'sec-ch-ua-mobile': '?0', 'Sec-Fetch-Dest': 'empty', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Site': 'same-origin', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.106 Safari/537.36', 'X-Requested-With': 'XMLHttpRequest'}
params={'page': 'i', 'size': '90', 'order': 'desc', 'orderby': 'percent', 'order_by': 'percent', 'market': 'CN', 'type': 'sh_sz','_': '1624339862692'}
res=requests.get(url,headers=headers,params=params)
res.content.decode("utf-8")
res_json=res.json()
name_one=res_json['data']['list']
for x in name_one:
try:
num=x['symbol']
except:
num=None
try:
name=x['name']
except:
name=None
try:
shixiaolei=x['ps']
except:
shixiaolei=None
try:
high=f"{x['current_year_percent']/100:%}"
except:
high=None
list.append([num,name,shixiaolei,high])
time.sleep(2)
print(list)
with open('股票第一部分','w',newline='',encoding='utf-8')as f:
writer=csv.writer(f)
writer.writerow(['股票代码','股票名称','市销率','至今涨幅'])
for y in list:
writer.writerows(y)
提示:json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)。