我正在尝试根据用户输入的内容获取西班牙语单词的定义(如字典)。想法是:
>>> hola
'1. interj. U. como salutación familiar.'
我第一次尝试使用urllib2,但是由于定义是在JS执行之后出现的(这很有意义,duh),所以它不起作用。我也尝试过selenium,但据我所知,它必须打开一个导航窗口,对吗?我需要它像urllib2,隐形。在
如果您想尝试,我搜索定义的页面是http://lema.rae.es/drae/?val=word,其中word是用户输入的单词。在
有什么想法吗?在
Tags:
您可以通过} 浏览器自动化:
selenium
使无头^{我可能会像alecxe suggested那样做,但是我会使用加载定义本身的URL。例如,搜索
azul
:出现在问题中的URL加载一个页面,然后在
iframe
元素中加载定义的URL。直接用上面我展示的URL加载定义可以节省一些工作和复杂性:整个定义包含在body
的第一个div
子级中。不幸的是,它并没有消除对JavaScript的需求。在运行上述代码将生成:
^{pr2}$请注意,我没有检测到需要使用任何等待机制来检测页面内容是否已准备就绪。在调试器中查看页面a)我没有看到任何Ajax请求,b)查看JavaScript和页面本身,看起来所提供的是一个模糊的页面,JavaScript会同步地消除的影响。所以在
driver.get
返回时,内容应该已经准备好可以使用了。在相关问题 更多 >
编程相关推荐