繁体   English   中英

如何确定文本文件下载的基础URL

[英]How to determine the underlying URL of text file download

在下面的页面上,可以下载txt文件。 我对txt部分的第一个文件感兴趣。

我如何获取URL。 我可以拉它。 我如何得到不包含python的java脚本的url。

今天它:volume.20110218.txt。

http://www.optionsclearing.com/webapps/trade-volume-download

你的问题有点模糊。 听起来你想用urllib2BeautifulSoup模块做些什么。

使用urllib2的函数从基本URL获取HTML,使用BeautifulSoup解析它并使用表中(第一个TXT?)锚标记的目标( src属性的值)打开另一个连接并拉出这些内容。 然后打开本地文件(或子进程)并将第二次提取的内容提供给它。

使用BeautifulSoup最棘手的部分是找到唯一标识要提取的内容部分的特征。 现代HTML非常丑陋,并且通过用于生成它的各种工具和库往往会在其中嵌入大量无关垃圾。 (一个提示:单词“class”是一个Python保留关键字以及HTML中的公共属性。因此,您会发现将“class”属性/模式对传递给BeautifulSoup函数最简单方法是将它们包装在字典中: {'class': some_pattern}而不是用于大多数其他参数的更常见的keyword=pattern形式)。

要处理您可能想要阅读的JavaScript:

使用Javascript支持筛选屏幕的好工具是什么?

听起来,目前最好的办法是将基于Java的HTMLUnit软件包设置为网关,然后编写Python连接并控制它。 您也可以尝试使用Selenium来控制真实的浏览器会话,并通过进程间通信机制从中提取信息。

该页面使用javascript链接提交隐藏表单以下载文件。 表单隐藏字段似乎也由javascript填充。

似乎他们这样做是为了使自动下载更难完成。 如果他们不介意自动下载,请询问他们更简单的界面,否则,请不要尝试这样做。

更新:正如Jeremiah评论的那样,他们确实有一个批处理界面:

http://www.optionsclearing.com/market-data/batch-processing.jsp

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM