【问题标题】:Can't make Selenium search on a web page when using PythonAnywhere使用 PythonAnywhere 时无法在网页上进行 Selenium 搜索
【发布时间】:2016-02-05 10:29:43
【问题描述】:

我正在尝试使用 Selenium 在 https://instagram.com 上查找一些元素,并且我的代码在我的计算机上运行,​​但是当我在 PythonAnywhere 上运行它并尝试至少找到 body 时,它返回“” .代码:

from selenium import webdriver

def code():
    browser = webdriver.Firefox()
    browser.get('https://instagram.com')
    print(browser.find_element_by_tag_name('body').text)

def main():
    code()

if __name__ == '__main__':
    main()

我尝试使用来自他们Whitelist 的一些随机网站对其进行测试,结果成功了!但是 Instagram 也在那里......所以,我有点困惑。我的错误是什么?任何帮助表示赞赏。

【问题讨论】:

  • 'https://.instagram.com' 有点奇怪——不应该是'https://instagram.com' 没有多余的点吗?
  • @GilesThomas 是的,它没有多余的点,我拼错了。但这并不能解决问题
  • 如果它在没有登录 instagram 的情况下运行,那里可能没有太多/任何文本。您是否尝试过登录然后查看BODY
  • @JeffC 我尝试这样做,但找不到表单(用户名和密码字段),所以有人建议我尝试打印出 body 以检查我的代码甚至可以打开网站
  • 如果打印 browser.page_source 会怎样?

标签: python python-3.x selenium pythonanywhere


【解决方案1】:

我们没有将顶级 instagram 域 (instagram.com) 列入白名单,仅将子域(如 api.instagram.com 等)列入白名单,因此您无法使用 selenium 抓取 instagram。但是,您可以使用 API,因为这是从软件访问 Instagram 的首选方式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-18
    • 2021-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-05
    • 1970-01-01
    相关资源
    最近更新 更多