如何绕过解析检查

how to bypass the parsing check

提问人:mixs 提问时间:4/13/2023 最后编辑:mixs 更新时间:4/13/2023 访问量:34

问:

运行此程序时,无法在网站上注册并继续从中接收数据,并且必须注册

import fake_useragent
import requests
import os
from dotenv import load_dotenv, find_dotenv

load_dotenv(find_dotenv())

session = requests.Session()

login_link = 'https://go.yaklass.ru/auth/password'
user = fake_useragent.UserAgent().random
header = {
    'user-agent': user
}
data = {
    'UserName': os.getenv('UserName'),
    'Password': os.getenv('Password')
}

responce = session.post(login_link, data=data, headers=header)

profile_link = 'https://www.yaklass.ru/Account/Profile'
soup = session.get(profile_link, headers=header)
print(soup.text)

我本以为会得到帐户页面的html代码,但是网站上有一个“设备检查”,不允许我进入该网站

Python 推断出这一点:

<!DOCTYPE html>
<html lang="ru">
<head>
  <title>Checking your device</title>
  <link href="/favicon.ico" rel="shortcut icon"/>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link
    href="//b1a3b3f5-7394-48e5-9587-e5e03db7b89f.selcdn.net/mixed_opensans_400_400i_600_roboto_400_300_cyrilic_latin_v1.css"
    rel="stylesheet" type="text/css" media="screen and (min-width: 768px)"/>
  <link href="//b1a3b3f5-7394-48e5-9587-e5e03db7b89f.selcdn.net/robotocondensed/v16_cyrilic/font_v1.css"
        rel="stylesheet" type="text/css" media="screen and (max-width: 767px)"/>
</head>
<body>
<h3>Checking your device</h3>
<form id="captchaForm" action="/Account/DoSolveCaptcha1" method="post">
  <input type="hidden" name="r" id="r"/>
  <input type="hidden" name="b" id="b"/>
  <input type="hidden" name="s" id="s"/>
  <input type="hidden" name="tn" id="tn"/>
  <p id="msg">
    Please wait. In a few seconds the page will be loaded...
  </p>
  <p id="startPage" class="hide">
    <a href="/">To the main page</a>
  </p>
</form>
</body>
</html>


(我删除了脚本和样式形式的额外代码,因为由于代码量太大,问题没有发布)

python-3.x html 解析

评论


答: 暂无答案