【发布时间】:2021-03-23 05:47:52
【问题描述】:
我目前正在开发 Instagram 机器人,并希望使用 selenium 上传图片。我在 selenium 中模拟手机,但每次单击上传按钮时,资源管理器都会打开并让我手动选择图片。
有没有办法绕过它来自动上传图片?
【问题讨论】:
标签: python selenium selenium-webdriver instagram
我目前正在开发 Instagram 机器人,并希望使用 selenium 上传图片。我在 selenium 中模拟手机,但每次单击上传按钮时,资源管理器都会打开并让我手动选择图片。
有没有办法绕过它来自动上传图片?
【问题讨论】:
标签: python selenium selenium-webdriver instagram
Selenium 只是一个 Web Automator,不能用于处理文件选择器或任何与 Web 功能不同的类型。
话虽如此,我相信这可以通过使用名为Sikuli 的库来解决。请参阅this article 了解此功能的使用以及如何将其合并到您的脚本中。另请参阅How to use Sikuli with Selenium in Python?
的答案
另一种方法当然是使用API。
【讨论】:
我能够使用名为 instabot 的库从 python 将图片上传到 Instagram 上
然后执行以下操作:
from instabot import Bot
bot = Bot()
bot.login(username=USERNAME, password=PASSWORD)
bot.upload_photo(IMAGE_PATH, caption="Follow me on instagram! :D")
注意:多次运行脚本时可能会出现错误。要克服这个问题,您可能需要删除 config 文件夹。或者制作一个自动执行此类任务的脚本。
【讨论】: