簡體   English   中英

嘗試以登錄為目標時,Python 代碼在 Selenium 4 上不起作用

[英]Python code not working on Selenium 4 when trying to target login

一直在嘗試使用 Python 3 創建從 Selenium 到 Linkedin 的登錄名。我已經考慮了我認為的更改和棄用。 我錯過了什么。 這應該很簡單。 抱歉,如果我現在是代碼盲,已經在這 5 個小時了。 除了登錄之外的所有工作。 這是我的代碼塊:

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By

service = Service(r"C:\Users\stuar\PycharmProject\pythonProject1\chromedriver.exe")
driver = webdriver.Chrome(service= service)
driver.get("https://gb.linkedin.com/")
time.sleep(3)

email = "myrealemail@email.com"
password = "somepass123 "

driver.find_element(By.ID, "element_id").send_keys('email')
driver.find_element(By.ID, "element_id").send_keys('password')
driver.find_element(By.ID, "element_id").send_keys(Keys.RETURN)

These are my exception codes:
raceback (most recent call last):
  File "C:\Users\stuar\PycharmProject\pythonProject1\main.py", line 16, in <module>
    driver.find_element(By.ID, "element_id").send_keys('email')
  File "C:\Users\stuar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\selenium\webdriver\remote\webdriver.py", line 1244, in find_element
    return self.execute(Command.FIND_ELEMENT, {
  File "C:\Users\stuar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\selenium\webdriver\remote\webdriver.py", line 424, in execute
    self.error_handler.check_response(response)
  File "C:\Users\stuar\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"[id="element_id"]"}
  (Session info: chrome=102.0.5005.63)
Stacktrace:
Backtrace:
    Ordinal0 [0x0073D953+2414931]
    Ordinal0 [0x006CF5E1+1963489]
    Ordinal0 [0x005BC6B8+837304]
    Ordinal0 [0x005E9500+1021184]
    Ordinal0 [0x005E979B+1021851]
    Ordinal0 [0x00616502+1205506]
    Ordinal0 [0x006044E4+1131748]
    Ordinal0 [0x00614812+1198098]
    Ordinal0 [0x006042B6+1131190]
    Ordinal0 [0x005DE860+976992]
    Ordinal0 [0x005DF756+980822]
    GetHandleVerifier [0x009ACC62+2510274]
    GetHandleVerifier [0x0099F760+2455744]
    GetHandleVerifier [0x007CEABA+551962]
    GetHandleVerifier [0x007CD916+547446]
    Ordinal0 [0x006D5F3B+1990459]
    Ordinal0 [0x006DA898+2009240]
    Ordinal0 [0x006DA985+2009477]
    Ordinal0 [0x006E3AD1+2046673]
    BaseThreadInitThunk [0x759EFA29+25]
    RtlGetAppContainerNamedObjectPath [0x77667A7E+286]
    RtlGetAppContainerNamedObjectPath [0x77667A4E+238]

看來您使用的locators Value不正確,請嘗試以下操作

driver.find_element(By.CSS_SELECTOR, "#session_key").send_keys('email')
driver.find_element(By.CSS_SELECTOR, "#session_password").send_keys('password')
driver.find_element(By.XPATH, "//*[@id='main-content']/section[1]/div/div/form/button").send_keys(Keys.RETURN)

我希望這能解決您的問題,如果您仍然遇到任何問題,請告訴我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM