forbidden 403怎么解决

import pandas as pd
pd.set_option('display.max_columns',None)
import tushare as ts
data = ts.get_index()
print(data)

执行到第四行报错了(urllib.error.HTTPError: HTTP Error 403: Forbidden)ts的其他功能应该能用,就是get_index报错
这个模块就刚用了几十次吧,我也没爬它。。
最后如果有用tushare模块的老哥,这个普通版是不是要停用了?总让我升级pro版

tushare模块目前是收费的, 你购买了是吗?
你可以尝试使用这两个模块 jqdatasdkbaostock

如有帮助给个采纳谢谢

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答来自chatgpt:

    解决方案:

    这个问题可能是因为你已经请求了太多次Tushare的服务器,服务器认为你是在进行爬虫等违规操作,所以才会出现403错误。可以通过以下几种方法解决:

    1. 设置延时:可以在每一次请求时设置延时,让服务器认为你是人工操作。例如,在每次请求时间隔3秒钟:
    import time
    import tushare as ts
    
    for i in range(10):
        time.sleep(3)
        ts.get_index()
    
    1. 设置User-Agent:将你的爬虫程序伪装成一个浏览器,更容易通过服务器的检测。可以在请求头部中设置User-Agent,例如:
    import tushare as ts
    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
    ts.set_token('your_token')
    pro = ts.pro_api()
    df = pro.index_daily(ts_code='000001.SH', start_date='20160101', end_date='20161231', headers=headers)
    
    1. 使用Tushare Pro版:Tushare Pro版是一个付费的版本,拥有更快的速度和更丰富的数据。使用Pro版可以有效避免因请求次数过多被服务器封禁的问题。如果你需要更高的数据访问频率和更详细的数据,请考虑使用Pro版。

    Tushare Pro版需要购买API Token,可以在Tushare的官网购买。购买后,需要使用set_token方法设置API Token:

    import tushare as ts
    ts.set_token('your_token')
    pro = ts.pro_api()
    df = pro.index_daily(ts_code='000001.SH', start_date='20160101', end_date='20161231')
    

    需要注意的是,使用Tushare Pro版需要支付额外的费用,具体以官网公布的价格为准。

    另外,使用Tushare普通版无需停用,但为了避免被封禁,建议使用以上几种方法避免过于频繁的请求。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^