当前位置: 首页 > 知识库问答 >
问题:

503 尝试抓取单个网站页面|时出错蟒蛇|请求

凌恩
2023-03-14

目标:我正在尝试从此页面抓取 HTML:https://www.doherty.jobs/jobs/search?q=

(注意-我最终会想从这个页面上对所有工作列表进行分页和抓取)

我的问题:当我尝试使用Python和请求来抓取页面时,我得到了一个503错误。我在谷歌Colab工作。

初始代码:

import requests

url = 'https://www.doherty.jobs/jobs/search?q=&l=&lat=&long=&d='

response = requests.get(url)

print(response)

尝试的解决方案:

  1. 使用“用户代理”:“Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/92.0.4515.131 Safari/537-36”
  2. 实现我在另一个线程中找到的代码:
import requests

def getUrl(url):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36',
    }
    res = requests.get(url, headers=headers)
    res.raise_for_status()

getUrl('https://www.doherty.jobs/jobs/search?q=&l=&lat=&long=&d=')

我可以通过浏览器访问网站

还有什么我可以尝试的吗?

谢谢

共有1个答案

岳鸿畴
2023-03-14

该页面受cloudflare保护,有一些选项可以尝试绕过它,似乎使用cloudscraper可以:

import cloudscraper

scraper = cloudscraper.create_scraper()
url = 'https://www.doherty.jobs/jobs/search?q=&l=&lat=&long=&d='

response = scraper.get(url).text

print(response)

为了使用它,您需要安装它:

pip install cloudscraper
 类似资料:
  • 我试图将python连接到mysql数据库,但它为。我使用的是 linux 操作系统。 这是我的代码: 这就是错误。 回溯(最近的最后一次调用):文件"/home/Sandytom/. loc/lib/python3.6/Site e-的包/mysql/连接器/connection_cext.py",第216行,在_open_connection中。_cmysql.connect(**cnx_kw

  • 我需要在我的中添加一个新的目录位置,但问题是我使用的是一个全新安装的系统(Linux),其中尚未定义任何。我读过并使用过,我认为我很了解它,但我不知道当没有存在时会发生什么。 我不能附加到不存在的东西上,但我希望当前发现的所有重要库都能正常工作,因此要小心,我在Python中使用了来获取所有标准值。然后我为定义了一个-变量,包括我刚刚找到的所有节点,以及我的新目录。但是哇,很多东西都停止工作了!P

  • 我面临的问题很简单。如果我试图从一个网站获取一些数据,有两个同名的类。但是它们都包含一个具有不同信息的表。我所拥有的代码只向我输出第一个类的内容。它看起来像这样: 如何让代码输出两个表的内容或仅输出第二个表的内容?提前感谢您的回答!

  • 我正在运行Ubuntu 18.04。 我使用mysql连接器-python连接Python到MySQL。 我使用的是Python 3.6.7,并且已经安装了mysql连接器-python。 我已经安装了mysql连接器-python-py3_8.0.13-1ubuntu18.10_all.deb. 在运行Python脚本时,mysql。连接器模块似乎加载正确,但脚本在碰到光标时失败。next()具

  • 假设我有一些资源,我想在用python编写的aws lambda中的不同请求之间共享。我应该如何实现这一点? 是否有“启动后”挂钩,或者我应该在第一次调用时惰性地创建资源?“延迟初始化”的缺点是,它意味着一些请求会随机变慢,因为您选择了一个消费者来承担启动成本。 此外…这些资源会在lambda可执行文件被“冻结”后幸存下来吗? 本页https://docs.aws.amazon.com/lambd

  • 我正在抓取一个网站,该网站在A-Z选项卡中按字母顺序列出数据,每个字母选项卡还包含多个页面。我如何从中提取所有URL? 公共静态void main(字符串[]args)引发异常{