gpt4 book ai didi

python - 使用 BeautifulSoup 进行网页抓取(Jupyter Notebook)

转载 作者:行者123 更新时间:2023-12-01 00:22:18 24 4
gpt4 key购买 nike

下午好,

我对网络抓取还很陌生。我正在尝试从开源门户中获取数据集。只是想弄清楚如何抓取网站。我正在尝试从 data.toerismevlaanderen.be 中获取数据集这是我想要的数据集:https://data.toerismevlaanderen.be/tourist/reca/beer_bars

我总是遇到 http 错误:HTTP 错误 404:未找到

这是我的代码:

import requests
import urllib.request
import time
from bs4 import BeautifulSoup

url = 'https://data.toerismevlaanderen.be/'
response = requests.get(url)

soup = BeautifulSoup(response.text, 'html.parser')
soup.findAll('a')
one_a_tag = soup.findAll('a')[35]
link = one_a_tag['href']

download_url = 'https://data.toerismevlaanderen.be/'+ link
urllib.request.urlretrieve(download_url,'./'+link[link.find('/tourist/reca/beer_bars_')+1:])

time.sleep

我做错了什么?

最佳答案

问题如下:

link = one_a_tag['href']
print(link)

这将返回一个链接:https://data.toerismevlaanderen.be/

然后,您可以通过以下操作将此链接添加到download_url:

download_url = 'https://data.toerismevlaanderen.be/'+ link

因此,如果您print(download_url),您将得到:

https://data.toerismevlaanderen.be/https://data.toerismevlaanderen.be/

这不是一个有效的网址。

根据评论更新

问题是您抓取的文本中没有tourist/activities/breweries。如果你写:

for link in soup.findAll('a'):
print(link.get('href'))

你会看到所有的a href标签。没有一个包含旅游/事件/啤酒厂

但是如果您只想要链接data.toerismevlaanderen.be/tourist/activities/breweries,您可以这样做:

download_url = link + "tourist/activities/breweries"

关于python - 使用 BeautifulSoup 进行网页抓取(Jupyter Notebook),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58876102/

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