使用 Python 和 Selenium 将照片上传到 Craigslist

2024-03-02

在windows10上使用python3、selenium和firefox: 这个程序很简单。它直接跳转到 craigslists 的“发布新列表”页面,上传多张照片,然后提交。我遇到的问题是我无法控制对话框使用硒导航到正确的文件。

browser = webdriver.Firefox()
browser.get('https://post.craigslist.org/k/lPbhT6Lh5RGBKb-uS1zr0g/g2NjN?lang=en&cc=us&s=editimage')
#opens to craigslists 'Upload/Edit Images' page

add_imgs_btn = browser.find_element_by_id('plupload')
#find the 'add images' button

add_imgs_btn.click()
#clicks the button which opens the dialog box, which is not operable from selenium
add_imgs_btn.send_keys(filepath)

我一直在做一些阅读,我得到的要点是我需要使用 send_keys() 到“输入文件”,但我对硒和一般编程仍然很陌生,我不完全理解这个概念。我的想法是使用 AutoIt 中的 SendKeys,但我什至不明白为什么 AutoIt 不会安装到我的计算机上。所以我希望有人可以阐明如何发送预先确定的路径名​​,以便我可以上传照片。感谢任何帮助,谢谢!


你不应该操作<button>元素,但与<input>相反,请使用以下代码:

browser.find_element_by_xpath("//input[@type='file']").send_‌​keys(filepath)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Python 和 Selenium 将照片上传到 Craigslist 的相关文章

  • C# 如何单击 IList 中的 IWebelement?

    所以我尝试单击 YouTube 上的按钮 但我无法通过 Xpath 找到该按钮 因为按钮太多 所以我尝试将它们保存在 IList 中 现在我想单击列表中的特定按钮 ChromeDriver chrome new ChromeDriver L
  • 将 Python Selenium 输出写入 Excel

    我编写了一个脚本来从在线网站上抓取产品信息 目标是将这些信息写入 Excel 文件 由于我的Python知识有限 我只知道如何在Powershell中使用Out file导出 但结果是每个产品的信息都打印在不同的行上 我希望每种产品都有一条
  • Selenium IDE-自动化Select2搜索框

    我正在尝试自动化 selenium IDE 中的 select2 搜索框 我打开它并输入了我正在搜索的搜索关键字 但是 即使我有用于显示结果的代码 它也不起作用 问题是我猜字符输入得太快 因此结果不会显示在搜索框中 我确信我在某个地方出错了
  • 硒脚本

    我想使用 selenium 脚本逐个单击网页上的一堆链接 每次单击都会刷新页面 然而 selenium 不支持像 visited 这样的 css 伪类 所以我无法区分已经点击的和我接下来要点击的 有办法解决我的问题吗 这是我的代码 http
  • 如何使用 xpath 检查某个对象在网页中是否可见?

    我正在 R 中使用 RSelenium 包来进行网络抓取 有时加载网页后 需要检查某个对象在网页中是否可见 例如 library RSelenium open a browser RSelenium startServer remDr lt
  • Selenium 与 scrapy 的动态页面

    我正在尝试使用 scrapy 从网页中抓取产品信息 我要抓取的网页如下所示 从包含 10 个产品的 Product list 页面开始 单击 下一步 按钮将加载接下来的 10 个产品 两个页面之间的 URL 不会改变 我使用 LinkExt
  • 从Python中的字典列表中查找特定值

    我的字典列表中有以下数据 data I versicolor 0 Sepal Length 7 9 I setosa 0 I virginica 1 I versicolor 0 I setosa 1 I virginica 0 Sepal
  • 使用 PHP Selenium Webdriver 单击下拉菜单中的选项?

    我正在使用 PHP Selenium Webdriver 包装器Facebook https github com facebook php webdriver 任何人都可以给我一个如何单击或从选择下拉菜单中选择选项的示例吗 我已经尝试过这
  • Perl 和 Selenium::远程::驱动程序

    再次编辑 我在弗吉尼亚州北部某处的 AWS 上有一台服务器 这是我的监控服务器 我从另一个状态 ssh 进入这个 Ubuntu 服务器来进行系统管理 我想在这台服务器上进行 Web 自动化测试 它将测试互联网上的 Web 应用程序 点击 U
  • 如何使用 selenium 和 Mocha 获取 xPath() 选择的锚标记的文本

    我已经成功选择了 a 标签 我想显示锚标记的文本 但无法这样做 我正在使用 selenium mocha javascript 和 phantomJS 这是我的脚本 详细 var assert require assert var test
  • 如何获取 WebElement 的父级[重复]

    这个问题在这里已经有答案了 我试过了 private WebElement getParent final WebElement webElement return webElement findElement By xpath 但我得到
  • 运行多个并行 Selenium WebDriver 会话

    我想知道我们是否能够运行两个 Selenium WebDriver 会话 或者如何使用同一个 WebDriver 处理两个浏览器窗口并并行运行它们 尝试像下面这样定义您的 TestNg 套件 然后它将同时开始运行两者
  • Ubuntu 上的 Python 3 上的字节到字符串的编码不稳定

    我是 Python 新手 正在研究传感器 我正在逐行构建代码 但在字节到字符串的编码 解码部分遇到问题 同样的代码 有时有效 有时无效 这是代码 import serial import time import os port serial
  • 如何使用 docker-machine 中的 docker-compose 将文件从 docker 容器复制到主机

    我在 gradle 容器中为我的硒测试生成了报告 我正在尝试将文件从 docker 容器复制到本地主机 作为解决方法 我使用 docker cp 将文件从容器复制到本地 并且它有效 如何使用 docker compose Volume 来实
  • 如何使用 python 让 selenium 同时按下 Shift + Enter 键盘?

    我制作了一个 Whatsapp 机器人和一个网络爬虫来获取冠状病毒病例 我想在换行符上发送每个数据 例如 Cases x 死亡人数 是 回收 z 但由于我使用的是 Whatsapp n 不起作用 并且会发送每一行 我也尝试过 ActionC
  • 测试从常规函数调用 python 协程(async def)

    假设我有一些异步协程 它可以获取一些数据并返回它 像这样 async def fetch data args result await some io return result 基本上 这个协程是从协程链中调用的 初始协程是通过创建任务来
  • 如何通过xpath检索下拉列表中的文本

    我想指定我的网页元素的 xpath
  • watir selenium:浏览器构造函数无法识别的参数

    在我的 Rails 应用程序中 我有一个 nokogiri watir 爬虫 运行良好 在我升级了 gems 也升级了例如 selenium 后 当我使用以下命令打开爬虫浏览器时 BROWSER OPTIONS w headless no
  • Watir 不会下载 PDF,只能在查看器中打开

    我试图用 Selenium 进行测试 但无法下载 pdf pdf 一直打开 参见我的另一篇文章 RUBY Selenium Webdriver 设置为下载 pdf 文件而不是打开它们 https stackoverflow com ques
  • Selenium 打开未登录 Chrome 帐户的 chrome

    我最近一直在使用 Selenium WebDriver 我还专门使用 chromedriver 每当我打开一个新的 chrome 窗口 driver get url 时 Chrome 都会以完全默认的状态启动 而不是我刚刚从我的扩展坞打开一

随机推荐

  • 如何将 Selenium 连接到现有的 Firefox 浏览器? (Python)

    有谁知道如何将现有的 Firefox 浏览器与 Selenium 连接 我尝试了 Chrome 方式 没有运气 在调试模式下启动 Firefox start firefox exe marionette foreground no remo
  • 在 R 中追加数据

    我正在生成一个脚本 在其中对一堆数据进行了许多操作 并且对另一个数据集进行了相同的操作 两个数据集具有相同的行 列和标题 我希望能够将两个数据集连接在一起 将数据集 A 放置在数据集 B 之上 我不需要数据集 B 的标题 而是将所有数据聚集
  • 如何使表格中的整行可作为链接点击?

    我正在使用 Bootstrap 但以下内容不起作用 tbody a href tr td Blah Blah td td 1234567 td td 158 000 td tr a tbody 作者注一 请查看下面的其他答案 尤其是那些不使
  • Python 中的按位运算是如何进行的?

    我今天一直在学习按位运算 我了解到Not 反转所有位 例如 01010 to 10101 这意味着 10应该是 5 但我看到它是 11 每个python命令行 这是 01010 to 11011 只有两位被反转 谁能解释一下为什么不是101
  • UVa 的 3n+1 挑战

    我在运行 编程挑战 中的 3n 1 问题 时遇到问题 我已经尝试了在 google 上找到的所有 Java 解决方案 甚至是 Stack Overflow 上的解决方案 但没有一个有效 它们都报告 错误答案 我还找到了一个可行的 C 解决方
  • Android EditText 输入类型 textShortMessage

    inputType 的目的是什么textShortMessage https developer android com reference android text InputType html TYPE TEXT VARIATION S
  • 如何在列表中的任意位置插入元素?

    我有这个 gt gt gt a 1 4 7 11 17 有什么办法可以增加4个字符吗 随机地在其他元素之间实现 例如 1 4 7 11 17 你可以简单地这样做 import random for in range 4 a insert r
  • NSMutableArray 属性初始化和更新

    假设我有一个 property 它是一个 NSMutablearray 其中包含四个对象使用的分数 它们将被初始化为零 然后在 viewDidLoad 期间和应用程序的整个操作过程中更新 由于某种原因 我无法全神贯注于需要做什么 特别是在声
  • 删除其他工作表上的列中*不*存在值的行

    我有一个包含两张纸的 LibreOffice Calc 文件 表 2 只有一列 A 其中有很多数字 在工作表 1 中 每行的 A 列也包含一个数字 我想从工作表 1 中删除 A 列中具有值的所有行not appear anywhere在表
  • 在 json 模式中定义键值对的正确方法是什么

    如何在 json 模式中定义键值对对象 正确 方式 我想定义这个 id 99 info name somename href someUrl 以下两项是否准确 1 type object name MyObj properties id t
  • 运算符 ++ 中的 Int 参数

    class myClass public void operator myInstance void operator int myInstance 除了让编译器区分myInstance and myInstance 是可选的int论证中o
  • App Engine (Python) 数据存储区预调用 API 挂钩

    背景 假设我正在为 GAE 制作应用程序 并且我想使用API 钩子 http code google com appengine articles hooks html BIG EDIT 在这个问题的原始版本中 我描述了我的用例 但有些人正
  • 为什么有时 jQuery 选择器会返回类似“a.fn.init”的内容? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我不知道我的 Chrome 浏览器发生了什么 但突然出现了这样的行为 div my 控制台中的内容与以前完全不同 我曾经经历过一次 但后来又
  • NSOpenPanel 无法获得焦点

    首先 我对 Swift 完全陌生 如果我的问题看起来微不足道 我很抱歉 我想要一个非常简单的命令行程序 它打开一个对话框来选择文件或文件夹 该工具不得运行带有在 Dock 中弹跳的图标的实际完整应用程序 而是运行一些微妙的东西 就是这样 我
  • 使用 Direct2D/DirectWrite 确定文本边界框

    ID2D1RenderTarget DrawGlyphRun采用以下参数 D2D1 POINT 2F baselineOrigin in CONST DWRITE GLYPH RUN glyphRun in ID2D1Brush foreg
  • 如何将 pandas 中的字符串转换为日期时间格式?

    我有一个专栏I DATE数据框中的字符串 对象 类型称为train如下图所示 I DATE 28 03 2012 2 15 00 PM 28 03 2012 2 17 28 PM 28 03 2012 2 50 50 PM 如何转换I DA
  • 条件面板 R 中的多个条件闪亮

    在闪亮的应用程序中使用条件面板时是否可以有多个条件 我想隐藏几个选项卡的特定 UI 组件 以下是我正在尝试的内容 但当我有多个条件时它似乎并不适用 library shiny library shinyWidgets library shi
  • 缺少引用 OLEDB 连接类型的库

    我从以下代码中得到了SSIS 团队博客 http blogs msdn com b mattm archive 2008 08 22 accessing oledb connection managers in a script aspx转
  • 无法访问的服务 - appsactivity

    我今天在执行我的 google apps 脚本 webapp 时开始收到消息 无法访问服务 appsactivity 有谁知道是否会停电 无法访问的服务 appsactivity 之前的答案是正确的 但提到的问题现已作为重复项关闭 http
  • 使用 Python 和 Selenium 将照片上传到 Craigslist

    在windows10上使用python3 selenium和firefox 这个程序很简单 它直接跳转到 craigslists 的 发布新列表 页面 上传多张照片 然后提交 我遇到的问题是我无法控制对话框使用硒导航到正确的文件 brows