想用selenum实现自动化登录,google加了检验,报此浏览器或应用可能不安全, 所以就想在在打开的浏览器直接操作元素是否可行而不是直接打开新浏览器, 直接上代码:

import os
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.chrome.options import Options

chrome_path = "C:\\Users\\win10\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe"
profile_dir = "D:\\python-click\\selenium\\AutomationProfile"
start_chrome_cmd = 'start %s --remote-debugging-port=9222 --user-data-dir=%s'%(chrome_path, profile_dir)
os.system(start_chrome_cmd)
#如果chrome_path 带有空格, 则start_chrome_cmd='start "" %s --remote-debugging-port=9222 --user-data-dir=%s'%(chrome_path, profile_dir)

chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")

driver = webdriver.Chrome(options=chrome_options)
print("浏览器标题:",driver.title);

def openUrl(url):
    driver.get(url)
    time.sleep(5)
    element = driver.find_element(By.LINK_TEXT, "登录")
    element.click()

if __name__ == '__main__':
    openUrl('https://www.google.com/adsense/start/')


这个方式是可行的,至少手动点击登录,输入帐号都没有问题, 不过google仍然加了人机检验,如果直接自动点击输入,仍然会报"此浏览器或应用可能不安全"的问题而出不来密码输入框。我猜测是否加上模拟鼠标轨迹及点击位置随机生成可能会通过他的检验,现在还没有时间测试,有兴趣的可以自己测试一下。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐