使用urllib进行网络扫描
问题描述:
我期待获得关于CME website 的一些信息即我想获得10y Treasury Note Future的期货收益率和期货DV01。 发现在一个旧thread这个小片段:使用urllib进行网络扫描
import urllib.request
class AppURLopener(urllib.request.FancyURLopener):
version = "Mozilla/5.0"
opener = AppURLopener()
fh = opener.open('http://www.cmegroup.com/tools-information/quikstrike/treasury-analytics.html')
它抛出一个弃用警告,我不太清楚我是如何从上述网站得到的信息。请有人启发我新的语法应该是什么,以及如何获得信息。谢谢
答
当您完成安装硒时运行脚本。
from selenium import webdriver ; from bs4 import BeautifulSoup
driver = webdriver.Chrome()
driver.get("http://www.cmegroup.com/tools-information/quikstrike/treasury-analytics.html")
driver.switch_to_frame(driver.find_element_by_tag_name("iframe"))
soup = BeautifulSoup(driver.page_source, 'html.parser')
driver.quit()
table = soup.select('table.grid')[0]
list_of_rows = [[t_data.text for t_data in item.select('th,td')]
for item in table.select('tr')]
for data in list_of_rows:
print(data)
我认为,这是表[部分画面]你是后:
+0
,工作很好。我正在使用Safari。非常感谢。 – steff
你有安装在你的电脑硒?如果是,请告诉我。为了达到您要查找的数据,需要跨越两个障碍。首先,该网页已启用JavaScript,其次有一个“iframe”,您需要切换以收集数据。你需要使用硒来闯关。 – SIM
如果这就是我所需要的我当然可以安装它。 – steff