【问题标题】:How to find a div element in DOM code with selenium webdriver and python? [closed]如何使用 selenium webdriver 和 python 在 DOM 代码中查找 div 元素? [关闭]
【发布时间】:2017-07-24 12:14:45
【问题描述】:

我想通过使用 selenium webdriver 和 python 2.7 获取文档宽度来检测非移动友好网站。

我打算如何使用 selenium webdriver 和 python 完成这项工作:

  1. 在与手机设备宽度相似的小窗口中打开 Chrome 网络驱动程序
  2. 打开 URL 并读取其 DOM html 页面代码
  3. 在网站的 DOM 代码正文中查找 <div id="Wrapper"(或类似名称)。
  4. 如果<div id="Wrapper"大于430px(大多数手机的最大宽度),打印网址和'website not reponsive'消息

那么两个问题:

  1. 这是检测非移动网站的可靠方法吗?

  2. 如何查找决定网站内容宽度的元素?

【问题讨论】:

    标签: python html selenium selenium-webdriver


    【解决方案1】:

    你可以做一些事情:

    driver.execute_script("return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);")
    

    如果是基于用户代理的移动设备,将返回布尔值。

    要获得你可以做的宽度:

    driver.execute_script("return document.body.offsetWidth;")
    

    这将返回文档正文的当前宽度(以像素为单位)的整数。

    还有一个内置到 selenium 中,它将为您提供浏览器大小。请记住,如果您使用的是 Chrome 的移动仿真,这会给您一个错误的值。

    driver.get_window_size()
    

    这将返回带有键 heightwidth 的字典。

    【讨论】:

    • 非常有帮助,谢谢!
    猜你喜欢
    • 1970-01-01
    • 2020-03-23
    • 1970-01-01
    • 2019-06-04
    • 2023-03-11
    • 2017-09-12
    • 2018-08-28
    • 2014-08-13
    • 2017-07-03
    相关资源
    最近更新 更多