问题描述
我对这一切都不熟悉,所以我需要一点帮助。对于一个 uni 项目,我试图从网站中提取成分,一般来说代码的工作方式应该是这样,但我只是不知道如何 最后得到“Bärlauch”而不是“B%C3%A4rlauch”。
我使用了beautifulsoup,代码如下:
URL = [...]
links = []
for url in range(0,10):
req = requests.get(URL[url])
soup = bs(req.content,'html.parser')
for link in soup.findAll('a'):
links.append(str(link.get('href')))
我不明白为什么它不能正常工作,尽管编码已经是 utf-8。 也许有人知道得更好。
谢谢!
解决方法
网址是网址编码的。请求的响应是 response
而不是 req
(uest)。
URLS = [...]
links = []
for url in URLS:
response = requests.get(url)
soup = bs(response.content,'html.parser')
for link in soup.find_all('a'):
links.append(urllib.parse.unquote(link.get('href')))