如何使用 python 检查网站是否响应?

How do I check if a website is responsive using python?

我正在结合使用 python3 和 beautifulsoup。

我想检查网站是否响应。首先我想检查一个网站的元标签,看看里面是否有这样的东西:

content="width=device-width, initial-scale=1.0 使用这种方法的准确性不是很好,但我还没有找到更好的方法。

有人有想法吗?

基本上我想做和 Google 在这里做的一样的事情:https://search.google.com/test/mobile-friendly 减少到网站响应与否的输出 (Y/N)

(只是一个建议)

我不是这方面的专家,但我的第一个想法是您需要渲染网站并查看它是否 "responds" 适合不同的屏幕尺寸。我通常会使用 phantomjs 之类的东西来做到这一点。

显然,您可以在 python 中使用 selenium 执行此操作(更多信息在 ). A more comprehensive list of technologies that can be used for this task can be found here。请注意,这些资源似乎有点 old/outdated 并且一些解决方案回退到python 子进程调用 phantomjs.

链接的 google 测试似乎

  • 在小型浏览器中加载页面并检查:
    • 可读的字体大小
    • 确保页面可用的可点击元素之间的距离

不过,我会执行以下操作:

  • 在桌面模式下加载页面,记录每个 div 的样式。
  • 逐渐缩小屏幕尺寸,看看有多少比例会改变风格
  • 在大多数情况下,从大屏幕到 phone 大小,您应该会看到 1-3 种不同的布局,这些布局应该可以从元素更改样式的百分比中识别出来

以上内容不能保证该页面 "mobile-friendly"(即可在移动设备上使用),但可以显示 CSS 是否响应。