欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用python來玩一次股票代碼詳解

 更新時(shí)間:2023年01月16日 15:47:30   作者:螞蟻愛Python  
這篇文章主要介紹了使用python來玩一次股票代碼詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

準(zhǔn)備工作

我們需要使用這些模塊,通過pip安裝即可。

后續(xù)使用的其它的模塊都是Python自帶的,

不需要安裝,直接導(dǎo)入使用即可。

requests:      爬蟲數(shù)據(jù)請(qǐng)求模塊
pyecharts:     數(shù)據(jù)分析 可視化模塊
pandas:        數(shù)據(jù)分析 可視化模塊里面的設(shè)置模塊(圖表樣式)

獲取數(shù)據(jù)部分

爬蟲的基本流程

思路分析

采集什么數(shù)據(jù)?怎么采集?

首先我們找到數(shù)據(jù)來源

代碼實(shí)現(xiàn)

我們想要實(shí)現(xiàn)通過爬蟲獲取到數(shù)據(jù),正常情況下有幾個(gè)步驟:

發(fā)送請(qǐng)求獲取數(shù)據(jù)解析數(shù)據(jù)保存數(shù)據(jù)

接下來我們來看代碼 代碼展示

導(dǎo)入需要使用的模塊

import requests     # 數(shù)據(jù)請(qǐng)求模塊
import csv          # 表格模塊

發(fā)送請(qǐng)求

通過response模塊來訪問需要獲取數(shù)據(jù)的地址

url = 'https://stock.xueqiu.com/v5/stock/screener/quote/list.json?page={page}&size=30&order=desc&orderby=percent&order_by=percent&market=CN&type=sh_sz'
requests.get(url=url)

需要使用 cookie 來偽裝一下,

cookie代表著用戶身份信息。

當(dāng)然光cookie是不夠的,

咱們?cè)偌由袭?dāng)前網(wǎng)頁的 user-agent

偽裝加好之后,咱們就能得到一個(gè)相應(yīng)結(jié)果,

先打印出來看看。

import requests  # 第三方模塊
import csv

# 偽裝
headers = {
    # 用戶身份信息
    'cookie': 's=bq119wflib; device_id=90ec0683f24e4d1dd28a383d87fa03c5; xq_a_token=df4b782b118f7f9cabab6989b39a24cb04685f95; xqat=df4b782b118f7f9cabab6989b39a24cb04685f95; xq_r_token=3ae1ada2a33de0f698daa53fb4e1b61edf335952; xq_id_token=evjkfkyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTY3MjE4Njc1MSwiY3RtIjoxNjcwNTAxMjA5MTEyLCJjaWQiOiJkOWQwbjRBWnVwIn0.iuLASkwB6LkAYhG8X8HE-M7AM0n0QUULimW1C4bmkko-wwnPv8YgdakTC1Ju6TPQLjGuvfudhhMqHuSXqiWdOqVIjy_OMEj9L_HScDot-7kn63uc2lZbEdGnjyF3sDrqGBCpocuxTTwuSFuQoQ1lL7ZWLYOcvz2pRgCw64I0zLZ9LogQU8rNP-a_1Nc91V8moONFqPvjjnWD5Lt3JxqcuyJbmb86OpfJZRycnh1Gjnl0Aj1ltGa4sNGSMXoY2iNM8NB56LLIp9dztEwExiRSWlWZifpl9ERTIIpHFBq6L2lSTRKqXKb0V3McmgwQ1X0_MdNdLAZaLZjSIIcQgBU26T8Z4YBZ39dA; u=511670501221348; Hm_lvt_1db88642e346389874251b5a1eded6e3=1667994737,1670480781,1670501222; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1670501922',

    # 瀏覽器的基本信息
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36'
}

url = 'https://stock.xueqiu.com/v5/stock/screener/quote/list.json?page={page}&size=30&order=desc&orderby=percent&order_by=percent&market=CN&type=sh_sz'
    # 1. 發(fā)送請(qǐng)求
response = requests.get(url=url, headers=headers)

print(response)

運(yùn)行后出現(xiàn) <Response [200]>求請(qǐng)求成功,

出現(xiàn)404就是訪問不到資源,一般是被反爬了。

所以這時(shí)候我們需要加一個(gè) referer 防盜鏈參數(shù)進(jìn)去

'referer: https://xueqiu.com/hq'

如果加了還不行,

就是自己鏈接有問題了。

取數(shù)據(jù)的話 .json 就好了

import requests  # 第三方模塊
import csv

# 偽裝
headers = {
    # 用戶身份信息
    'cookie': 's=bq119wflib; device_id=90ec0683f24e4d1dd28a383d87fa03c5; xq_a_token=df4b782b118f7f9cabab6989b39a24cb04685f95; xqat=df4b782b118f7f9cabab6989b39a24cb04685f95; xq_r_token=3ae1ada2a33de0f698daa53fb4e1b61edf335952; xq_id_tokendjdjfvj=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOi0xLCJpc3MiOiJ1YyIsImV4cCI6MTY3MjE4Njc1MSwiY3RtIjoxNjcwNTAxMjA5MTEyLCJjaWQiOiJkOWQwbjRBWnVwIn0.iuLASkwB6LkAYhG8X8HE-M7AM0n0QUULimW1C4bmkko-wwnPv8YgdakTC1Ju6TPQLjGhMqHuSXqiWdOqVIjy_OMEj9L_HScDot-7kn63uc2lZbEdGnjyF3sDrqGBCpocuxTTwuSFuQoQ1lL7ZWLYOcvz2pRgCw64I0zLZ9LogQU8rNP-a_1Nc91V8moONFqPWD5Lt3JxqcuyJbmb86OpfJZRycnh1Gjnl0Aj1ltGa4sNGSMXoY2iNM8NB56LLIp9dztEwExiRSWlWZifpl9ERTIIpHFBq6L2lSTRKqXKb0V3McmgwQ1X0_MdNdLAZaLZjSIIcQgBU26T8Z4YBZ39dA; u=511670501221348; Hm_lvt_1db88642e346389874251b5a1eded6e3=1667994737,1670480781,1670501222; Hm_lpvt_1db88642e346389874251b5a1eded6e3=1670501922',
    # 防盜鏈
    'referer: https://xueqiu.com/hq'
    # 瀏覽器的基本信息
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36'
}

url = 'https://stock.xueqiu.com/v5/stock/screener/quote/list.json?page={page}&size=30&order=desc&orderby=percent&order_by=percent&market=CN&type=sh_sz'
    # 1. 發(fā)送請(qǐng)求
response = requests.get(url=url, headers=headers)

print(response.json())

獲取數(shù)據(jù)

什么是json數(shù)據(jù)?

以 {}/[] 所包裹起來的數(shù)據(jù) {“”:“”, “”:“”}

除了 .json 還可以通過 .text 和 .content 來拿到數(shù)據(jù),但是它們獲取到的數(shù)據(jù)是一樣。

.text 獲取到的是字符串,文本內(nèi)容。

.content 取到的是二進(jìn)制數(shù)據(jù),一般是圖片/音頻/視頻內(nèi)容。

json_data = response.json()

解析數(shù)據(jù)

解析數(shù)據(jù)就是提取數(shù)據(jù),把我們想要的數(shù)據(jù)提取出來。

沒學(xué)過字典的小伙伴,可以先學(xué)一下字典。

data_list = json_data['data']['list']
# data_list[0]
# data_list[1]
for i in range(0, len(data_list)):
    symbol = data_list[i]['symbol']
    name = data_list[i]['name']
    current = data_list[i]['current']
    chg = data_list[i]['chg']
    percent = data_list[i]['percent']
    current_year_percent = data_list[i]['current_year_percent']
    volume = data_list[i]['volume']
    amount = data_list[i]['amount']
    turnover_rate = data_list[i]['turnover_rate']
    pe_ttm = data_list[i]['pe_ttm']
    dividend_yield = data_list[i]['dividend_yield']
    market_capital = data_list[i]['market_capital']
    print(symbol, name, current, chg, percent, current_year_percent, volume, amount, turnover_rate, pe_ttm, dividend_yield, market_capital)

保存數(shù)據(jù)

csv_writer.writerow([symbol, name, current, chg, percent, current_year_percent, volume, amount, turnover_rate, pe_ttm, dividend_yield, market_capital])

數(shù)據(jù)可視化分析

導(dǎo)入需要使用的模塊

import pandas as pd         # 做表格數(shù)據(jù)處理模塊 
from pyecharts.charts import Bar    # 可視化模塊 
from pyecharts import options as opts   # 可視化模塊里面的設(shè)置模塊(圖表樣式)

讀取數(shù)據(jù)

df = pd.read_csv('股票.csv')
x = list(df['股票名稱'].values)
y = list(df['成交量'].values)
 
c = (
    Bar()
    .add_xaxis(x[:10])
    .add_yaxis("成交額", y[:10])
    .set_global_opts(
        xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=-15)),
        title_opts=opts.TitleOpts(title="Bar-旋轉(zhuǎn)X軸標(biāo)簽", subtitle="解決標(biāo)簽名字過長的問題"),
    )
    .render("成交量圖表.html")

到此這篇關(guān)于使用python來玩一次股票代碼詳解的文章就介紹到這了,更多相關(guān)Python實(shí)戰(zhàn)項(xiàng)目內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python返回?cái)?shù)組的索引實(shí)例

    python返回?cái)?shù)組的索引實(shí)例

    今天小編就為大家分享一篇python返回?cái)?shù)組的索引實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • python利用json和pyecharts畫折線圖實(shí)例代碼

    python利用json和pyecharts畫折線圖實(shí)例代碼

    這篇文章主要介紹了python利用json和pyecharts畫折線圖實(shí)例,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-12-12
  • Python報(bào)錯(cuò)ImportError: No module named ‘missing_module‘的解決方法

    Python報(bào)錯(cuò)ImportError: No module named ‘mi

    在 Python 開發(fā)過程中,報(bào)錯(cuò)是常有的事,而當(dāng)遇到“ImportError: No module named ‘missing_module’”這樣的報(bào)錯(cuò)時(shí),可能會(huì)讓開發(fā)者感到困惑和苦惱,本文將深入探討這個(gè)報(bào)錯(cuò)的原因和解決方法,幫助開發(fā)者快速解決這個(gè)問題,需要的朋友可以參考下
    2024-10-10
  • pycharm雙擊無響應(yīng)(打不開問題解決辦法)

    pycharm雙擊無響應(yīng)(打不開問題解決辦法)

    這篇文章主要介紹了pycharm雙擊無響應(yīng)(打不開問題解決辦法),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • python 添加環(huán)境變量及配置方法

    python 添加環(huán)境變量及配置方法

    這篇文章主要介紹了python 添加環(huán)境變量的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Python3.9新特性詳解

    Python3.9新特性詳解

    這篇文章主要介紹了Python3.9新特性詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python?包?requests?實(shí)現(xiàn)請(qǐng)求操作

    python?包?requests?實(shí)現(xiàn)請(qǐng)求操作

    這篇文章主要介紹了python?包?requests?實(shí)現(xiàn)請(qǐng)求操作,文章介紹內(nèi)容包括帶參數(shù)請(qǐng)求、自定義headers,文章內(nèi)容詳細(xì)具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-04-04
  • 解決pytorch GPU 計(jì)算過程中出現(xiàn)內(nèi)存耗盡的問題

    解決pytorch GPU 計(jì)算過程中出現(xiàn)內(nèi)存耗盡的問題

    今天小編就為大家分享一篇解決pytorch GPU 計(jì)算過程中出現(xiàn)內(nèi)存耗盡的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python?lazypredict構(gòu)建大量基本模型簡化機(jī)器學(xué)習(xí)

    python?lazypredict構(gòu)建大量基本模型簡化機(jī)器學(xué)習(xí)

    這篇文章主要介紹了python?lazypredict構(gòu)建大量基本模型簡化機(jī)器學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Python制作豆瓣圖片的爬蟲

    Python制作豆瓣圖片的爬蟲

    本文給大家分享的是作者制作的爬取豆瓣首頁圖片的爬蟲代碼,代碼很簡單,大家可以參考下思路,希望可以幫到大家
    2017-12-12

最新評(píng)論