Chrome 无法使用selenium webdriver登录LinkedIn Google帐户

2w3kk1z5  于 12个月前  发布在  Go
关注(0)|答案(1)|浏览(223)

老实说,让我感到沮丧的是,在几次尝试解决方案后,谷歌仍然给我这个错误:

由于有一个类似的帖子关于这个问题,我想尝试https://stackoverflow.com/a/60117617/12556138给出的解决方案,但无济于事,他提供的解决方案不起作用,因为我试图做的正是ff:
a.添加ff.我的代码的选项

edge_options.add_argument("--disable-web-security")
edge_options.add_argument("--allow-running-insecure-content")
edge_options.add_argument("--user-data-dir=C:/Users/Mig/AppData/Local/Google/Chrome/User Data/Profile 1")

B.关闭双因素身份验证
c.尝试打开不太安全的应用程序,但我已经研究过,谷歌已经从2022年5月30日起删除了允许从不太安全的应用程序连接的选项。您必须对Google帐户启用两步验证并生成应用密码123才能使用Google SMTP服务器或其他需要Google登录的第三方应用,这与解决方案b直接矛盾。
d.在我的Edge浏览器中始终打开JavaScript
e.还试图删除所有的历史和保存的数据在我的浏览器
f.尝试在https://myaccount.google.com/中远程退出所有设备的Google帐户
以下是我的错误消息:

[<some token>/184906.747:ERROR:chrome_browser_cloud_management_controller.cc(162)] Cloud management controller initialization aborted as CBCM is not enabled.
[<some token>/184906.769:ERROR:assistance_home_client.cc(32)] File path C:\Users\Mig\AppData\Local\Temp\scoped_dir1308_592920665\Default

DevTools listening on ws://127.0.0.1:<some token>
[<some token>/184908.140:ERROR:fallback_task_provider.cc(124)] Every renderer should have at least one task provided by a primary task provider. If a "Renderer" fallback task is shown, it is a bug. If you have repro steps, please file a new bug and tag it as a dependency of crbug.com/739782.
[<some token>/184909.398:ERROR:smartscreen_dns_resolver.cc(110)] SmartScreenDnsResolver::OnComplete Error: -7 DidTimeOut: 1 URL: https://www.linkedin.com/mynetwork/invite-connect/connections/
done!
[<some token>/184912.991:ERROR:gpu_disk_cache.cc(216)] Failed to create blob cache entry: -2

(gmail-automations) D:\Projects\To Github\auto-job-app-sender>[<some token>/184918.305:ERROR:device_event_log_impl.cc(222)] [18:49:18.305] Bluetooth: bluetooth_adapter_winrt.cc:1058 Getting Default Adapter failed.

下面是我的主要python脚本:

def main():
    # # if using chrome
    # chrome_options = ChromeOptions()
    # chrome_options.add_experimental_option('detach', True)
    # service = ChromeService(executable_path=ChromeDriverManager().install())
    # driver = webdriver.Chrome(service=service, options=chrome_options)

    # if using edge
    edge_options = EdgeOptions()
    edge_options.add_experimental_option('detach', True)
    # edge_options.add_argument("--disable-web-security")
    # edge_options.add_argument("--allow-running-insecure-content")
    # edge_options.add_argument("--user-data-dir=C:/Users/Mig/AppData/Local/Google/Chrome/User Data/Profile 1")
    # edge_options.add_argument("--profile-directory=Default")
    service = EdgeService(executable_path=EdgeChromiumDriverManager().install())
    driver = webdriver.Edge(service=service, options=edge_options)

    
    links_to_connections = collect_links_to_connections(driver=driver, link="https://www.linkedin.com/mynetwork/invite-connect/connections/")
    # collect_recruiter_info(driver, links)

我也有一个同事登录到他的链接通过他的谷歌帐户和提醒你,他的帐户有双重认证启用,所以回避了问题。我的谷歌帐户或代码有什么问题,即使我禁用了双因素身份验证,也不允许我使用selenium web driver登录到我的谷歌帐户?

0tdrvxhp

0tdrvxhp1#

我可以在我这边复制这个问题。我认为我们不能使用selenium WebDriver来控制LinkedIn Google帐户中的自动登录。Google应该已经检测到使用WebDriver,因此阻止了进一步的操作。
您可以使用登录到LinkedIn Google帐户的Edge个人资料作为解决方案。然后你只需要处理到URL https://www.linkedin.com/mynetwork/invite-connect/connections/,不需要再次登录。
您可以在 edge://version/ 中找到配置文件路径,并在代码中使用该配置文件,如下所示:

edge_options.add_argument("user-data-dir=C:\\Users\\Administrator\\AppData\\Local\\Microsoft\\Edge\\User Data")
edge_options.add_argument("profile-directory=Profile 1")

相关问题