selenium Selify被网站快速屏蔽--SSL握手错误

dm7nw8vv  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(157)

我在我的项目中使用了 selenium 和 selenium 电线。我正在编写登录到AWS和GCP门户的流。我的流工作正常,但当我进入AWS/GCP门户时,我收到一个错误,并看到空白页面。
亚马逊网络服务门户链接:https://us-east-1.console.aws.amazon.com/console/home?region=us-east-1#

GCP门户

selenium 驱动程序`

from seleniumwire import webdriver
from seleniumwire.webdriver import ChromeOptions

def test_aws_flow():

    options = ChromeOptions()
    options.add_experimental_option("detach", True)
    options.add_argument('--no-sandbox')
    options.add_argument('--single-process')
    options.add_argument('--disable-dev-shm-usage')
    options.add_argument("--start-maximized")
    options.add_argument('--auto-open-devtools-for-tabs')
    options.add_argument('--log-level=2')
    options.add_argument('--disable-features=IsolateOrigins,site-per-process')
    options.add_argument("--ignore_ssl")
    options.add_argument('--ignore-ssl-errors')
    options.add_argument('--ignore-certificate-errors')
    options.add_argument("--disable-extensions")
    options.add_argument("--disable-setuid-sandbox")
    options.add_argument("--dns-prefetch-disable")
    options.add_argument('ignore-certificate-errors')
    options.add_argument('disable-web-security')
    options.add_argument('--allow-insecure-localhost')

    driver = webdriver.Chrome(options=options)
    driver.get('....any-hidden-url')
    # more flow actions - then it open aws portal

`
我在GitHub中发现了一些问题,这些问题对我来说不起作用。https://github.com/wkeeling/selenium-wire/issues/566

  • 他们建议使用未检测到的bot chromeDriver,我尝试了,但它仍然显示出相同的问题。
  • 部分更新*

我添加了openssl.cnf并在我的测试中使用pycharm在本地运行它

openssl_conf = openssl_init

[openssl_init]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
Options = UnsafeLegacyRenegotiation

成功登录GCP和AWS..为什么?当我将其部署到AWS lambda时,如何确保它不会在Prod环境中发生?

wljmcqd8

wljmcqd81#

如果您的页面没有打开,请让我知道。我相信他们正在检测机器人。您可能希望尝试使用假用户代理,如下面的代码所示。

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver import ActionChains
from selenium.webdriver.chrome.options import Options
import time

options = Options()
user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.517 Safari/537.36'
options.add_argument('user-agent={0}'.format(user_agent))

driver = webdriver.Chrome(options=options)
wait = WebDriverWait(driver, 20)
action = ActionChains(driver)

driver.get("https://us-east-1.console.aws.amazon.com/console/home?region=us-east-1#")
time.sleep(20)
driver.quit()

注意-请删除您不需要的多余代码。谢谢你..!

相关问题