【问题标题】:Scrape with requests page with CSRF token使用 CSRF 令牌抓取请求页面
【发布时间】:2021-06-19 08:18:13
【问题描述】:

我正在尝试从这个booking website 中获取结果。在POST request 中,除了行程代码和日期之外,还有_csrf 参数,我假设它是CSRF token。 我试图获取会话 cookie 并在 this answer 之后提取 CSRF token 但我得到的 cookie 没有 CSRF token

<RequestsCookieJar[<Cookie JSESSIONID=W33kBCH5zFsyVhTyQL9L4Ibyq-KLGTBSD4h_IUNA.aru-270545 for www.booking.alilaurogruson.it/booking>]>

def get_session_cookie():
    url = 'https://www.booking.alilaurogruson.it/booking/welcome/home'
    s = requests.Session()
    s.get(url, verify=False)
    print(s.cookies)
    if 'csrftoken' in s.cookies:
        # Django 1.6 and up
        csrftoken = s.cookies['csrftoken']
    else:
        # older versions
        csrftoken = s.cookies['csrf']
    return csrftoken

如何成功抓取搜索结果?

【问题讨论】:

    标签: python web-scraping python-requests


    【解决方案1】:

    _csrf 在该页面上作为表单参数提供,您必须使用 BeautifulSoup 之类的内容进行解析。

    <input type="hidden" name="_csrf" value="666363ca-ffff-ffff-ffff-41a61e158e0f" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-09
      • 2021-01-11
      • 2021-07-21
      相关资源
      最近更新 更多