从aspx pag解析动态生成的URL

2024-06-09 04:07:02 发布

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

我试图解析一个包含表的aspx页面, 每行都有一个元素,用于在新选项卡上打开pdf文件

元素打开的url存储在页面源中表单中的脚本中,但似乎只有在实际单击该元素后才能为每个文件生成脚本

我的最终目标是保存所有这些pdf文件,我认为最好的解决方案是保存url并使用请求保存每个url的内容。 但是我找不到一种方法来获取所有URL,而不实际单击每个元素

单击元素后脚本的HTML:

 <script language="JavaScript">
    var docUrl=escape('/NGCS.Web.Secured/Viewer/NGCSViewerPage.aspx?DocumentNumber=4105ea67709148d7984ce9a2efc48157');
    window.open(unescape(docUrl)); </script>

此示例中需要的值是“docUrl”中列出的字符串,即:“/NGCS.Web.Secured/Viewer/NGCSViewerPage.aspx?DocumentNumber=4105EA67709148D7984CE9A2EFC4157”,或字符串中的“DocumentNumber”,即:'4105EA67709148D7984CE9A2EFC4157'

这些值中的任何一个都可以用于导航到包含所需文件的页面的动态url

找不到与我的问题类似的内容


Tags: 文件脚本weburl元素内容pdfscript
1条回答
网友
1楼 · 发布于 2024-06-09 04:07:02

你没有提供太多关于你如何持有这个对象的信息,所以我假设它是一个字符串。 您可以使用正则表达式获取文档编号,如下所示:

import re
s = ''' <script language="JavaScript">
    var docUrl=escape('/NGCS.Web.Secured/Viewer/NGCSViewerPage.aspx?DocumentNumber=4105ea67709148d7984ce9a2efc48157');
    window.open(unescape(docUrl)); </script>'''
print(re.search('DocumentNumber=([\w]+)',s).groups())

相关问题 更多 >