小编Sah*_*876的帖子

Python 网页抓取被阻止

我想抓取德国房地产网站 immobilienscout24.de。我想下载给定 URL 的 HTML,然后离线使用 HTML。它不用于商业用途或出版,我也不打算向网站发送垃圾邮件,它仅用于编码练习。我想编写一个 python 工具,自动下载给定 immobilienscout24.de 站点的 HTML。我曾尝试为此使用 beautifulsoup,但是,解析的 HTML 没有显示内容,而是询问我是否是机器人等,这意味着我的网络爬虫被检测到并被阻止(我可以在 Firefox 中访问该站点就好了)。我已经设置了一个引用、一个延迟和一个用户代理。我还能做些什么来避免被检测到(即旋转代理、旋转用户代理、随机点击、其他未被检测到的网页抓取工具...... )?我曾尝试使用我的电话 IP 但得到了相同的结果。GUI webscraping 工具不是一个选项,因为我需要用 python 控制它。如果可能,请提供一些可实现的代码。到目前为止,这是我的代码:

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

url = "https://www.immobilienscout24.de/Suche/de/wohnung-mieten?sorting=2#"
req = urllib.request.Request(url, data=None, headers={ 'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36' })
req.add_header('Referer', 'https://www.google.de/search?q=immoscout24)
delays = [3, 2, 4, 6, 7, 10, 11, 17]
time.sleep(numpy.random.choice(delays)) # I want to implement delays like this
page …
Run Code Online (Sandbox Code Playgroud)

python proxy beautifulsoup web-scraping

2
推荐指数
1
解决办法
1172
查看次数

标签 统计

beautifulsoup ×1

proxy ×1

python ×1

web-scraping ×1