在python中模拟javascript的dopostback,web报废

2024-10-01 17:24:05 发布

您现在位置:Python中文网/ 问答频道 /正文

{我的问题是:}在这里,我建议你的代码^是可以模仿的。如何模拟javascript:\ doPostBack?在

来自网站的代码(此处为整版源LINK

<a style="color: Black;" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$gvSearchResults','Page$2')">2</a>

当然,我基本上已经知道该怎么办了。在

提前感谢您的帮助和想法

好吧,有很多帖子询问在使用python库mechanize,beautifulsoup….进行web报废时如何单击javascript按钮。我看到很多“不支持”的响应使用这种非python解决方案。我认为这个问题的python解决方案对很多人都有很大的好处。从这个意义上说,我不想寻找诸如使用x、y或z这样的答案,因为它们不是python代码,也不需要与浏览器交互。在


Tags: 代码网站stylepagelinkjavascript解决方案建议
1条回答
网友
1楼 · 发布于 2024-10-01 17:24:05

mechanize页面并不建议您可以在Python中模拟JavaScript。这意味着您可以更改表单中的一个隐藏字段,从而欺骗web服务器一个人类1选择了该字段。你还需要自己分析目标。在

对于这个问题,没有基于Python的解决方案,除非您希望用Python创建JavaScript解释器。在

关于这个问题,我找到了三个可能的解决方案:

  1. 创建XULRunner应用程序
  2. 浏览器自动化
  3. 尝试解释客户端代码

在这三个问题中,我只看过2的讨论。我看到了一些东西 在商业刮削应用程序中接近1,基本上可以创建 通过浏览网站并在页面上选择 希望将来提取脚本。在

1可以通过接受 序列化(JSON?)正在获取应用程序获取 URL,然后将处理后的页面作为wsgi响应对象发送。你可以的 可能要实现liburl2包装一些中间件。滥杀 可能吧,不过想想也挺好玩的。在

2通常是通过Selenium RC(远程控制)来实现的,它是以测试为中心的 工具。它提供了一些方法,比如getHtmlSource,但是大多数人 听说用它的人不喜欢它的API。在

3我不知道。node.js现在很热,但我没有 碰了它。我从来没能在我的Ubuntu上构建spidermonkey 机器,所以我也没碰过。我的预感是为了 这样,您就可以将HTML源代码和您的详细信息提供给JS 翻译,这需要假装是你的用户代理等,以防 JavaScript想重新连接服务器。在

从技术上讲,它是一个兼容JavaScript的用户代理,它几乎总是人类使用的web浏览器

相关问题 更多 >

    热门问题