我正在寻找一种自动化网页浏览的方式/方式。 例如,我有这些搜索结果(对不起俄语): http://www.consultant.ru/search/?q=N+145-%D0%A4%D0%97+%D0%BE%D1%82+31.07.1998
我想从python中检索变量“item.n”(第399行)的值?看起来它是Javascript函数“onSearchLoaded”的内部变量,但如果你将鼠标指针放在搜索结果上,你会看到n = 160111 - 这是item.n的值我试图得到 python中有哪些包可以帮助我做到这一点?
答案 0 :(得分:2)
您不必自己提取javascript变量,只需使用该变量。在这种情况下,它将被放置在搜索结果的href中。
您可以使用许多不同的库进行自动化。这取决于您希望看到的自动化水平。就我而言,我更喜欢使用硒来实现这些类型的自动化。结合核心python模块正则表达式,你可以创建一个基本的例子。我能够使用selenium编写一个快速模型:
from selenium import webdriver
import re
url = "http://www.consultant.ru/search/?q=N+145-%D0%A4%D0%97+%D0%BE%D1%82+31.07.1998"
pattern = re.compile("n=(\d+)")
xpath = '//div[@id = "baseSrch"]//a'
browser = webdriver.Firefox()
page = browser.get(url)
elements = browser.find_elements_by_xpath(xpath)
browser.close()
for element in elements:
match = re.search(pattern, element.get_attribute("href"))
if match:
print match.group(1)
哪个收益率:
160111
然而,这不是唯一的方法,您也可以用urllib,requests,lxml等替换它。有许多不同的方法可以用来提取信息。