You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python Requests爬取doherty.jobs页面返回503错误如何解决

解决方法

你遇到的503错误是目标站点启用了Cloudflare的JS验证防护,requests库无法执行页面动态JS完成验证,所以仅修改UA无效,可尝试以下方案:

方案1:使用cloudscraper库绕过验证

cloudscraper专门针对Cloudflare防护做了适配,无需启动完整浏览器,资源占用更低,Colab环境可直接运行:

  1. 安装依赖
!pip install cloudscraper
  1. 请求示例代码
import cloudscraper

# 初始化模拟Chrome浏览器的scraper实例
scraper = cloudscraper.create_scraper(
    browser={'browser': 'chrome', 'platform': 'windows', 'mobile': False}
)
target_url = 'https://www.doherty.jobs/jobs/search?q=&l=&lat=&long=&d='
response = scraper.get(target_url)
# 打印状态码和页面内容确认
print(response.status_code)
print(response.text)

方案2:使用无头浏览器模拟真实访问

如果cloudscraper仍然无法绕过,可以用undetected-chromedriver启动完整的无头Chrome环境,完全模拟真人浏览器行为,几乎可以绕过所有前端反爬:

  1. 安装依赖
!pip install undetected-chromedriver
  1. 请求示例代码
import undetected_chromedriver as uc
from time import sleep

# 配置无头参数
chrome_options = uc.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_argument('user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36')

driver = uc.Chrome(options=chrome_options)
target_url = 'https://www.doherty.jobs/jobs/search?q=&l=&lat=&long=&d='
driver.get(target_url)
# 等待页面加载完成
sleep(2)
# 获取页面HTML源码
page_html = driver.page_source
print(page_html)
# 关闭浏览器
driver.quit()

后续分页爬取注意事项

  • 每次请求间隔2~3秒,避免触发站点频率限制
  • 翻页时可以先通过浏览器开发者工具观察分页参数规则,直接拼接URL请求,或者模拟点击分页按钮获取下一页内容
  • 如果出现访问失败,可以更换请求头或者间隔更长时间后重试

内容的提问来源于stack exchange,提问作者ruscias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:09:03