【问题标题】:Scraping data from website Python - After interaction从网站 Python 中抓取数据 - 交互后
【发布时间】:2020-08-13 00:03:11
【问题描述】:

大家好!

我的一个朋友在学校的 IT 课上需要大量打字。这意味着,她必须学习如何在键盘上快速打字。尽管她很懒惰,但她问我是否知道她如何能够在不做任何事情的情况下在https://at4.typewriter.at/index.php?r=site/index 上输入她的文本。我心想:“嘿,这是个很酷的主意,我会研究一下”。

This is how the website looks like

那是她必须输入的网站。有一个

我面临的问题是,我不知道如何从已经在 webbrowser 中打开/已经编辑/已经交互的网站中抓取数据。我很高兴有任何建议或解决方案!

谢谢!

【问题讨论】:

    标签: python html web-scraping beautifulsoup python-webbrowser


    【解决方案1】:

    通常,人们会询问您迄今为止尝试过的内容以及您的代码,但我知道您真的不知道如何开始解决这个问题。

    如果您需要 Python 脚本能够在用户与网站互动后介入,那么您将面临巨大的挑战。有很多变量,比如正在使用什么浏览器、在什么操作系统上、在什么分辨率下、使用什么设置等等。

    与实时应用程序交互将相当困难,尽管并非不可能。如果该站点可以完全使用键盘进行操作,并且您可以找到一些可靠的键盘输入序列来找到正确的控件来发送输入,那么这可能是一种方法,并且像 pywin32 这样的库可以提供对 API 调用的访问权限。 d 需要将输入发送到屏幕。

    但是,更好的方法可能是完全删除用户并让脚本执行所有交互。您可以通过selenium 之类的工具和ChromeDriver 之类的驱动程序来做到这一点,它基本上允许您像用户一样操作网站及其所有脚本。

    您可能应该研究这两种方法中的任何一种,并在遇到问题时提出基本的尝试来提出更具体的问题。

    【讨论】:

      【解决方案2】:

      我真的建议将selenium 作为一个网络驱动程序来研究,它允许自动化和类似于 BS4 的抓取,用于专门与 DOM 元素交互。

      我对这个网站有点不确定,因为我不能完全访问它,但是,我相信如果你查看 selenium 文档,你应该能够解决你的问题!

      使用selenium,您可能需要安装浏览器驱动程序,因此根据设置和您可以安装/执行的内容,可能会出现问题。在我看来,selenium python 绑定相对简单,但是比 BS4 稍微复杂一些。如果您遇到困难或尝试深入了解documentation,我建议您查看其他 SO 帖子!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多