硒渣

scrapy-selenium-python-pi的Python项目详细描述


#使用selenium的scrapy
scrapy中间件处理使用selenium的javascript页面。


您还需要selenium[兼容浏览器]之一(http://www.seleniumhq.org/about/platforms.jsp)。

添加要使用的浏览器、可执行文件的路径以及要传递给可执行文件的参数到scrapy设置:
``python
Chrome而不是Firefox。将“seleniummiddleware”添加到下载程序中间软件:
``python
`downloader\u middleware={
`scrapy\u selenium\u python pi.seleniummiddleware':800
}
`````
`usage
`use使用“scrapy\u selenium\u python pi.selenium request”,而不是下面这样的垃圾内置请求:
``python
`fromscrapy_selenium_python_pi import selenium request

yield seleniumrequest(url,self.parse_result)
```
请求将由selenium处理,响应将有一个名为“driver”的附加“meta”键,其中包含处理请求的selenium驱动程序。
``python
def parse_result(self,响应:
打印(response.meta['driver'].title)
```
有关可用驱动程序方法和属性的详细信息,请参阅[selenium python文档](http://selenium python.readthedocs.io/api.html module selenium.webdriver.remote.webdriver)

selector响应属性正常工作(但包含由selenium驱动程序处理的html)。
``python
def parse廑result(self,响应:
print(response.selector.xpath('//title/@text'))
````

selenium将在返回对spider的响应之前执行[显式等待](http://selenium python.readthedocs.io/waits.html显式等待)。
``python
来自selenium.webdriver.common.by
来自selenium.webdriver.support import expected_conditions as ec

yield seleniumrequest(
url,
self.parse_result,
wait_time=10,
wait/>wait_until=ec.element_要被点击((by.id,'someid')

`````


` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `估计(
url,
self.parse_result,
screenshot=true



def parse_result(self,response):
以open('image.png','wb')作为image_文件:
image_file.write(response.meta['screenshot])
```




欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在通配符泛型类型和泛型类型之间未经检查的强制转换   java Eclipse SWT Hello world教程:无法将显示解析为类型   java如何向远程用户发送注销消息?   java RDD之后的空文件是什么。保存ASTEXTFILE?   用户界面在java中创建一个htmljs UI GCalendar   Java多个哈希映射指向同一个键   Java Dowhile循环不工作?   oraclejava类。组织。阿帕奇。梁sdk。util。UserCodeException:java。sql。SQLException:无法创建PoolableConnectionFactory   java是org类型。日食用户界面。文本编辑器。*看不见   java有没有从弹出窗口复制eclipse中变量值的插件或快捷方式?   java getSubimage为我提供了期望值null   java我想让它变得更简单   swing AWTEventQueue0一直在运行,java中的程序变得非常慢   java Solr实例化类时出错:自定义类   java将ListView适配器移植到RecyclerView适配器   c#测试混合web和桌面应用程序的安全性