标签: botdetect

如何自动登录到正在检测我使用 selenium-stealth 登录的尝试的网站

所以,我正在尝试编写一个脚本来登录https://us.etrade.com/e/t/user/login

我正在使用 Selenium,但它在启动时以某种方式检测到 selenium,并产生一条消息,指出服务器拥挤,当发生这种情况时,我无法登录。我也尝试过使用 unDetected-selenium 以及硒是隐形的,但两者也都被检测到。我真的需要自动化这个登录过程。我尝试过使用 python requests 但不起作用。我对任何其他允许我实现这种自动化的技术或方法持开放态度。请帮忙。

这是我的代码


from selenium import webdriver
from selenium.webdriver.common.by import By

from selenium_stealth import stealth
import time

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
# chrome_options.add_argument('--browser')
chrome_options.add_argument('--no-sandbox')
# chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"])
chrome_options.add_experimental_option('useAutomationExtension', False)
wd = webdriver.Chrome('chromedriver',chrome_options=chrome_options)

stealth(wd,
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Win32",
        webgl_vendor="Intel Inc.",
        renderer="Intel Iris OpenGL Engine",
        fix_hairline=True,
        )

wd.get("https://us.etrade.com/e/t/user/login")

Run Code Online (Sandbox Code Playgroud)

python selenium selenium-webdriver botdetect selenium-stealth

10
推荐指数
1
解决办法
1万
查看次数

使用Angular js实现BotDetect

我们有BotDetect的许可证.我想用Angular js实现这个BotDetect.我在谷歌搜索我发现没有任何适当的帮助,但是,我有angularjs-captcha看起来很有希望,但没有帮助我.

这正是我所需要的.

  1. 使用验证码图片加载页面
  2. 用户填写表格
  3. 用户点击提交
  4. 使用$ http请求页面提交
  5. 如果响应成功或失败,则应根据其工作引擎重新加载Captcha.

这是我的形式

<form ng-submit="Submit($event)">
    <table width="100%" cellpadding="0" cellspacing="1" align="center">
        <tr>
            <td class="datafield">
                <label>Name:</label>
                <span class="red">*</span>
            </td>
            <td class="datafield">
                <input type="text" maxlength="50" class="searchboxmain" placeholder="enter name..."
                    ng-model="Form.Name" />
            </td>
        </tr>
        <tr>
            <td class="datafield">
                <label>Email:</label>
                <span class="red">*</span>
            </td>
            <td class="datafield">
                <input type="email" maxlength="240" class="searchboxmain" placeholder="enter email..."
                    ng-model="Form.Email" />
            </td>
        </tr>
        <tr>
            <td class="datafield">Enter Captcha
            </td>
            <td class="datafield">
                <botdetect-captcha>
            <br />
                <input type="text" id="CaptchaCodeTextBox" ng-model="Form.Captcha"/>
            </td>
        </tr>
        <tr>
            <td class="datafield"></td>
            <td class="datafield"> …
Run Code Online (Sandbox Code Playgroud)

jquery captcha angularjs botdetect

7
推荐指数
1
解决办法
727
查看次数

使用 DataDome 的网站在使用 Selenium 和 Python 进行抓取时被验证码阻止

我实际上正在尝试从不同的网站上抓取一些汽车数据,我一直在 chromebrowser 中使用 selenium,但有些网站实际上通过验证码验证阻止了 selenium(例如: https: //www.leboncoin.fr/),这只是1 或 2 个请求。我尝试在 chromebrowser 中更改 $_cdc 但这并没有解决问题,并且我一直在 chromebrowser 中使用这些选项

user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'
options = webdriver.ChromeOptions()
options.add_argument(f'user-agent={user_agent}')
options.add_argument('start-maximized')
options.add_argument('disable-infobars')
options.add_argument('--profile-directory=Default')
options.add_argument("--incognito")
options.add_argument("--disable-plugins-discovery")
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors", "safebrowsing-disable-download-protection", "safebrowsing-disable-auto-update", "disable-client-side-phishing-detection"])
options.add_argument('--disable-extensions')
browser = webdriver.Chrome(chrome_options=options)

browser.delete_all_cookies()

browser.set_window_size(800,800)

browser.set_window_position(0,0)
Run Code Online (Sandbox Code Playgroud)

我试图抓取的网站使用 DataDome 来保证机器人安全,有什么线索吗?

python selenium google-chrome web-scraping botdetect

7
推荐指数
2
解决办法
1万
查看次数

如何使用 python 绕过机器人检测并抓取网站

问题

我是网络抓取的新手,我试图创建一个抓取器,它可以查看播放列表链接并获取音乐和作者的列表。

但该网站一直拒绝我的连接,因为它认为我是机器人,所以我使用 UserAgent 创建一个假的 useragent 字符串来尝试绕过过滤器。

有点效果吗?但问题是,当你通过浏览器访问网站时,你可以看到播放列表的内容,但是当你尝试用请求提取html代码时,播放列表的内容只是一个很大的空白。

也许我必须等待页面加载?或者有更强大的机器人过滤器?

我的代码

import requests
from bs4 import BeautifulSoup
from fake_useragent import UserAgent

ua = UserAgent()

melon_site="http://kko.to/IU8zwNmjM"

headers = {'User-Agent' : ua.random}
result = requests.get(melon_site, headers = headers)


print(result.status_code)
src = result.content
soup = BeautifulSoup(src,'html.parser')
print(soup)

Run Code Online (Sandbox Code Playgroud)

网站链接

播放列表链接

使用请求时得到的 html

html 播放列表应该有空白

python beautifulsoup web-scraping python-requests botdetect

5
推荐指数
1
解决办法
2万
查看次数