我正在尝试从dukascopy.com请求价格数据,但我遇到了与this user类似的问题,其中价格数据本身不是html的一部分。因此,当我运行我的基本urllib代码来提取数据时:
import urllib.request
url = 'https://www.dukascopy.com'
headers = {'User-Agent':'Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'}
req = urllib.request.Request(url, headers = headers)
resp = urllib.request.urlopen(req)
respData = resp.read()
print(str(respData))
无法找到价格数据。回到this post,用户Mark找到了另一个调用数据的URL。这可以应用于收集数据吗?
答案 0 :(得分:1)
尝试使用dryscape
。您可以使用它来抓取JavaScript呈现的页面。不要使用regex模块解析网页。这不是一个好主意。阅读此原因,您不应使用正则表达式解析HTML页面:HTML with regex。使用Beautiful进行解析。
import dryscrape
from bs4 import BeautifulSoup
url = 'https://www.dukascopy.com'
session = dryscrape.Session()
session.visit(url)
response = session.body()
soup=BeautifulSoup(response)
print soup