gpt4 book ai didi

python - 使用 python 通过我的个人服务器调用网络抓取时出错

转载 作者:行者123 更新时间:2023-12-03 08:36:50 25 4
gpt4 key购买 nike

我是编码新手,并且已经完成了一个简单的程序来网络抓取一些股票网站以获取特定数据。简化的代码如下所示:

headers = {'User-Agent': 'Personal_User_Agent'}

fv = f"https://finviz.com/quote.ashx?t=JAGX"

r_fv = requests.get(fv, headers=headers)
soup_fv = BeautifulSoup(r_fv.text, 'html.parser')
fv_ticker_title = soup_fv.find('title')
print(fv_ticker_title)
在我创建用户代理之前,该网站无法运行,但后来它运行良好。然后我通过 python 的本地主机创建了一个网站,它也运行良好,所以我想我已经准备好通过“python 任何地方”公开该网站。
但是,当我去创建公共(public)网站时,每次我通过网络抓取(即使用 user_agent)访问信息时,程序都会关闭。我不喜欢将我的用户代理用于公共(public)领域的想法,但是当公共(public)领域需要用户代理时,我不知道其他网络抓取的人如何解决这个问题。有什么建议!?

最佳答案

我会添加一些随机标题来旋转,而不是我自己的标题。像这样的东西应该工作:

import random

header_list = [
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Safari/605.1.15',
'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:77.0) Gecko/20100101 Firefox/77.0',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_18_3) AppleWebKit/537.34 (KHTML, like Gecko) Chrome/82.0.412.92 Safari/539.36',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 11.12; rv:87.0) Gecko/20170102 Firefox/78.0',
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.32 (KHTML, like Gecko) Chrome/82.0.12.17 Safari/535.42'
]

fv = f"https://finviz.com/quote.ashx?t=JAGX"

user_agent = random.choice(header_list)
headers = {'User-Agent': user_agent}

r_fv = requests.get(fv, headers=headers)
soup_fv = BeautifulSoup(r_fv.text, 'html.parser')
fv_ticker_title = soup_fv.find('title')
print(fv_ticker_title)
或选项 2。
使用名为 fake-headers 的库即兴生成它们:
from fake_headers import Headers

fv = f"https://finviz.com/quote.ashx?t=JAGX"

headers = Headers(os="mac", headers=True).generate()

r_fv = requests.get(fv, headers=headers)
soup_fv = BeautifulSoup(r_fv.text, 'html.parser')
fv_ticker_title = soup_fv.find('title')
print(fv_ticker_title)
真的取决于你是否想使用图书馆......

关于python - 使用 python 通过我的个人服务器调用网络抓取时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65777947/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com