登录销售导航器 python selenium

2024-04-03

我正在尝试实现登录销售导航页面的简单任务,之后我可以继续尝试抓取潜在客户和帐户数据,作为抓取练习。按照此link https://www.linkedin.com/sales/login为了登录,我有这个脚本来完成任务

    browser = webdriver.Firefox(executable_path=r'D:\geckodriver\geckodriver.exe')

    def login_linkedin(email_id,psswd):

        sales_url = "https://www.linkedin.com/sales/login"
        browser.get(sales_url)

        elem_username = browser.find_element_by_id("username")
        #elem_username = browser.find_element_by_name("session_key")
        elem_username.send_keys(email_id)
        elem_psswd = browser.find_element_by_id("password")
        #elem_psswd = browser.find_element_by_name("session_password")
        elem_psswd.send_keys(psswd)

        elem_signin = find_element_by_class_name("login__form_action_container ").click()

    if __name__ == "__main__":

        login_linkedin("la","la")

通过检查用户名、密码和登录按钮字段的每个元素(如下所示),我尝试按名称、类名和 id 查找元素,但最终总是以未找到元素错误。我可能会错过什么?

用户名元素

  <input id="username" name="session_key" type="text" aria-describedby="error-for-username" required="" validation="email|tel" autofocus="" aria-label="Email or Phone">

密码元素

  <input id="password" type="password" aria-describedby="error-for-password" name="session_password" required="" validation="password" aria-label="Password">

登录按钮元素

  <button class="btn__primary--large from__button--floating" type="submit" aria-label="Sign in">Sign in</button>

错误

Traceback (most recent call last):
File "D:\Freelancing\Scrape_sales_nav\code\my_code\scrape_accounts.py", line 40, in <module>
login_linkedin("la","la")
File "D:\Freelancing\Scrape_sales_nav\code\my_code\scrape_accounts.py", line 21, in login_linkedin
elem_username = browser.find_element_by_id("username")
File "C:\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 360, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 978, in find_element
'value': value})['value']
File "C:\Python36\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: [id="username"]

问题是您要查找的内容是在 iFrame 中,因此我们需要将 selenium 指向 iframe 而不是标准网页。幸运的是,selenium 有一个功能:switch_to_frame()

解决方案:

import time

browser = webdriver.Firefox(executable_path=r'D:\geckodriver\geckodriver.exe')

def login_linkedin(email_id, psswd):
        sales_url = "https://www.linkedin.com/sales/login"
        browser.get(sales_url)
        # sleeping to give the page time to load
        time.sleep(1)
        # the two lines below will put us into the iframe
        frame = browser.find_element_by_tag_name('iframe')
        browser.switch_to_frame(frame)
        # entering the username and password
        elem_username = browser.find_element_by_id("username")
        elem_username.send_keys(email_id)
        elem_psswd = browser.find_element_by_id("password")
        elem_psswd.send_keys(psswd)
        # no need for a variable name, we can just click
        browser.find_element_by_class_name("login__form_action_container ").click()

if __name__ == "__main__":
    login_linkedin('email_id', 'psswd')
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

登录销售导航器 python selenium 的相关文章

  • 使用 matplotlib 从“列表列表”绘制 3D 曲面

    我已经搜索了一些 虽然我可以找到许多有用的网格网格示例 但没有一个清楚地表明我如何将列表列表中的数据转换为可接受的形式 以适应我所讨论的各种方式 当谈到 numpy matplotlib 以及我所看到的建议的术语和步骤顺序时 我有点迷失 我
  • 如何在Python中流式传输和操作大数据文件

    我有一个相对较大 1 GB 的文本文件 我想通过跨类别求和来减小其大小 Geography AgeGroup Gender Race Count County1 1 M 1 12 County1 2 M 1 3 County1 2 M 2
  • Sublime Text 插件开发中的全局 Python 包

    一 总结 我不知道 Sublime Text 插件开发人员如何使用 Sublime Text 查找全局 Python 包 而不是 Sublime Text 目录的 Python 包 Sublime Text使用自己的Python环境 而不是
  • 如何以“正确”的方式处理带有空字节的 Python unicode 字符串?

    Question PyWin32 似乎很乐意将 null 终止的 unicode 字符串作为返回值 我想以 正确 的方式处理这些字符串 假设我得到一个像这样的字符串 u C Users Guest MyFile asy x00 x00sy
  • opencv水印周围的轮廓

    我想在图像中的水印周围画一个框 我已经提取了水印并找到了轮廓 但是 不会在水印周围绘制轮廓 轮廓是在我的整个图像上绘制的 请帮我提供正确的代码 轮廓坐标的输出为 array 0 0 0 634 450 634 450 0 dtype int
  • 如何使用 docker-machine 中的 docker-compose 将文件从 docker 容器复制到主机

    我在 gradle 容器中为我的硒测试生成了报告 我正在尝试将文件从 docker 容器复制到本地主机 作为解决方法 我使用 docker cp 将文件从容器复制到本地 并且它有效 如何使用 docker compose Volume 来实
  • Mac OS X 中文件系统的 Unicode 编码在 Python 中不正确?

    在 OS X 和 Python 中处理 Unicode 文件名有点困难 我试图在代码中稍后使用文件名作为正则表达式的输入 但文件名中使用的编码似乎与 sys getfilesystemencoding 告诉我的不同 采取以下代码 usr b
  • Python 中的流式传输管道

    我正在尝试使用 Python 将 vmstat 的输出转换为 CSV 文件 因此我使用类似的方法转换为 CSV 并将日期和时间添加为列 vmstat 5 python myscript py gt gt vmstat log 我遇到的问题是
  • sklearn 中的 pca.inverse_transform

    将我的数据拟合后 X 我的数据 pca PCA n components 1 pca fit X X pca pca fit transform X 现在 X pca 具有一维 当我根据定义执行逆变换时 它不是应该返回原始数据 即 X 二维
  • Python3.0 - 标记化和取消标记化

    我正在使用类似于以下简化脚本的内容来解析较大文件中的 python 片段 import io import tokenize src foo bar src bytes src encode src io BytesIO src src l
  • 使用 python 绘制正值小提琴图

    我发现小提琴图信息丰富且有用 我使用 python 库 seaborn 然而 当应用于正值时 它们几乎总是在低端显示负值 我发现这确实具有误导性 尤其是在处理现实数据集时 在seaborn的官方文档中https seaborn pydata
  • Tensorflow 与 Keras 的兼容性

    我正在使用 Python 3 6 和 Tensorflow 2 0 并且有一些 Keras 代码 import keras from keras models import Sequential from keras layers impo
  • 使用Python计算目录的大小?

    在我重新发明这个特殊的轮子之前 有没有人有一个很好的例程来使用 Python 计算目录的大小 如果例程能够很好地以 Mb Gb 等格式格式化大小 那就太好了 这会遍历所有子目录 总结文件大小 import os def get size s
  • 如何在 pandas 中使用 read_fwf 跳过空行?

    I use pandas read fwf http pandas pydata org pandas docs stable generated pandas read fwf htmlPython pandas 0 19 2 中的函数读
  • 在系统托盘中隐藏 tkinter 窗口 [重复]

    这个问题在这里已经有答案了 我正在制作一个程序来提醒我朋友的生日 这样我就不会忘记祝福他们 为此 我制作了两个 tkinter 窗口 1 First one is for entering name and birth date 2 Sec
  • 动态过滤 pandas 数据框

    我正在尝试使用三列的阈值来过滤 pandas 数据框 import pandas as pd df pd DataFrame A 6 2 10 5 3 B 2 5 3 2 6 C 5 2 1 8 2 df df loc df A gt 0
  • Python SSL X509:KEY_VALUES_MISMATCH

    Python HTTPS server from http server import HTTPServer SimpleHTTPRequestHandler import ssl https stackoverflow com a 408
  • 运行测试项目时自动启动ASP.MVC项目

    我正在尝试为我的 ASP 网站设置一个测试项目 对于某些测试 我想使用 selenium 来执行端到端测试 因此 我的网站必须运行 以便测试可以访问该网站 运行测试时如何启动我的网站项目 请参考以下链接 我相信这是可能的 但会有点棘手 这些
  • TKinter 中的禁用/启用按钮

    我正在尝试制作一个像开关一样的按钮 所以如果我单击禁用按钮 它将禁用 按钮 有效 如果我再次按下它 它将再次启用它 我尝试了 if else 之类的东西 但没有成功 这是一个例子 from tkinter import fenster Tk
  • 如何为不同操作系统/Python 版本编译 Python C/C++ 扩展?

    我注意到一些成熟的Python库已经为大多数架构 Win32 Win amd64 MacOS 和Python版本提供了预编译版本 针对不同环境交叉编译扩展的标准方法是什么 葡萄酒 虚拟机 众包 我们使用虚拟机和Hudson http hud

随机推荐