stockx.com是否阻止网页抓取?

时间:2020-06-18 17:07:55

标签: python beautifulsoup

我正在尝试从bs4中的“ https://stockx.com/”抓取网页,但出现urllib.error.HTTPError:HTTP错误403:禁止。反正我可以解决这个问题?

from urllib.request import urlopen as uReq

from bs4 import BeautifulSoup as soup

my_url = "https://stockx.com/"

uClient = uReq(my_url)

2 个答案:

答案 0 :(得分:2)

传递useragent标头似乎可以解决问题。

尝试这样的事情:

from urllib.request import urlopen as uReq, Request
from bs4 import BeautifulSoup as soup

my_url = "https://stockx.com/"

headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.3"}

uClient = uReq(Request(url=my_url, headers=headers))

但是请知道,如果您要剪贴的数据是动态的,bs4不会有太大帮助。考虑为此使用pyppeteerselenium等。

答案 1 :(得分:0)

使用scrapy,它将尝试再次请求该网站,并且它将遵循重定向。