Python 为什么网站在使用Selenium时会阻止浏览器导航?

Python 为什么网站在使用Selenium时会阻止浏览器导航?,python,selenium,google-chrome,webdriver,selenium-chromedriver,Python,Selenium,Google Chrome,Webdriver,Selenium Chromedriver,我喜欢这个话题,但它对我没有帮助 我正在尝试获取一些元素,而这是我对web的第一个操作 而且,有时,在我第一次连接到网站时,请求被破坏,网站拒绝任何东西 网站如何知道我在使用硒?我没有做任何花样动作或快速动作 这是 有人能帮我解决这个问题吗 这是我的密码 导入硒元素 从selenium导入webdriver def open_browser(): chrome\u options=webdriver.ChromeOptions() chrome_选项。添加_参数(“--disable info

我喜欢这个话题,但它对我没有帮助

我正在尝试获取一些元素,而这是我对web的第一个操作

而且,有时,在我第一次连接到网站时,请求被破坏,网站拒绝任何东西

网站如何知道我在使用硒?我没有做任何花样动作或快速动作

这是

有人能帮我解决这个问题吗

这是我的密码

导入硒元素
从selenium导入webdriver
def open_browser():
chrome\u options=webdriver.ChromeOptions()
chrome_选项。添加_参数(“--disable infobar”)
浏览器=selenium.webdriver.Chrome(“./chromedriver2.46.exe”,Chrome\u选项=Chrome\u选项)
browser.maximize_window()
返回浏览器
def go_至_yad2(浏览器):
browser.get(“https://www.yad2.co.il/products/all")
def open_类别(浏览器):
选项\u object=browser。通过\u xpath(//ul[@data name='salesCatID'])查找\u元素
打印(选项\u object.text())
def main_方法():
浏览器=打开浏览器()
go_to_yad2(浏览器)
打开类别(浏览器)

main_method()
从您的问题来看,有点不清楚您试图与哪个元素进行交互,以及为什么在您第一次连接到网站时,请求被破坏,网站拒绝任何内容

如果从网站上获得更多信息,exception将有助于我们更好地调试该问题。但是,我采用了您自己的代码,并做了一些简单的修改,并能够按如下方式提取文本:

  • 代码块:

    from selenium import webdriver
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
    def open_browser():
        chrome_options = webdriver.ChromeOptions()
        chrome_options.add_argument('start-maximized')
        chrome_options.add_argument('disable-infobars')
        chrome_options.add_argument('--disable-extensions')
        browser = webdriver.Chrome(chrome_options=chrome_options, executable_path=r'C:\WebDrivers\chromedriver.exe')
        return browser
    
    def go_to_yad2(browser):
        browser.get("https://www.yad2.co.il/products/all")
    
    def open_category(browser):
        print(WebDriverWait(browser, 30).until(EC.visibility_of_element_located((By.XPATH, "//h3[@class='search_title']"))).text)
    
    def main_method():
        browser = open_browser()
        go_to_yad2(browser)
        open_category(browser)
    
    main_method()
    
  • 控制台输出(非英语字符不会在本地主机上呈现):


从您的问题来看,有点不清楚您试图与哪些元素进行交互,以及为什么在您第一次连接到网站时,请求被破坏,网站拒绝了任何内容

如果从网站上获得更多信息,exception将有助于我们更好地调试该问题。但是,我采用了您自己的代码,并做了一些简单的修改,并能够按如下方式提取文本:

  • 代码块:

    from selenium import webdriver
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
    def open_browser():
        chrome_options = webdriver.ChromeOptions()
        chrome_options.add_argument('start-maximized')
        chrome_options.add_argument('disable-infobars')
        chrome_options.add_argument('--disable-extensions')
        browser = webdriver.Chrome(chrome_options=chrome_options, executable_path=r'C:\WebDrivers\chromedriver.exe')
        return browser
    
    def go_to_yad2(browser):
        browser.get("https://www.yad2.co.il/products/all")
    
    def open_category(browser):
        print(WebDriverWait(browser, 30).until(EC.visibility_of_element_located((By.XPATH, "//h3[@class='search_title']"))).text)
    
    def main_method():
        browser = open_browser()
        go_to_yad2(browser)
        open_category(browser)
    
    main_method()
    
  • 控制台输出(非英语字符不会在本地主机上呈现):


有时候,我第一次连接到网站时,首先意味着什么?第一天?第一个小时?第一分钟?第一分钟。我的意思是,在vpn上更改了我的ip,尝试通过selenium连接,然后被阻止。要么你的vpn错误,而你的ip地址实际上没有更改,要么网站根据你的ip地址以外的其他内容检测到你。不,我看到网站正在重新加载,但几秒钟后它再次被阻止YMMV:有时,关于我第一次连接到网站的第一个意思是什么?第一天?第一个小时?第一分钟?第一分钟。我的意思是,在vpn上更改了我的ip,尝试通过selenium连接,然后被阻止。要么你的vpn错误,而你的ip地址实际上没有更改,要么网站根据你的ip地址以外的内容检测到你。不,我看到网站正在重新加载,但几秒钟后它再次被阻止YMMV: