摘要:百度云搜索,搜各种资料搜网盘,搜各种资料虚拟浏览器是一个基于的内核无头浏览器也就是没有显示界面的浏览器,利用这个软件,可以获取到网址加载的任何信息,也就是可以获取浏览器异步加载的信息下载网址下载对应系统版本下载后解压文件,将解压文件夹,剪切
【百度云搜索,搜各种资料:http://www.bdyss.cn】 【搜网盘,搜各种资料:http://www.swpan.cn】
PhantomJS虚拟浏览器
phantomjs 是一个基于js的webkit内核无头浏览器 也就是没有显示界面的浏览器,利用这个软件,可以获取到网址js加载的任何信息,也就是可以获取浏览器异步加载的信息
下载网址:http://phantomjs.org/download... 下载对应系统版本
下载后解压PhantomJS文件,将解压文件夹,剪切到python安装文件夹
然后将PhantomJS文件夹里的bin文件夹添加系统环境变量
cdm 输入命令:PhantomJS 出现以下信息说明安装成功
selenium模块是一个python操作PhantomJS软件的一个模块
selenium模块PhantomJS软件
webdriver.PhantomJS()实例化PhantomJS浏览器对象
get("url")访问网站
find_element_by_xpath("xpath表达式")通过xpath表达式找对应元素
clear()清空输入框里的内容
send_keys("内容")将内容写入输入框
click()点击事件
get_screenshot_as_file("截图保存路径名称")将网页截图,保存到此目录
page_source获取网页htnl源码
quit()关闭PhantomJS浏览器
#!/usr/bin/env python # -*- coding:utf8 -*- from selenium import webdriver #导入selenium模块来操作PhantomJS import os import time import re llqdx = webdriver.PhantomJS() #实例化PhantomJS浏览器对象 llqdx.get("https://www.baidu.com/") #访问网址 # time.sleep(3) #等待3秒 # llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg") #将网页截图保存到此目录 #模拟用户操作 llqdx.find_element_by_xpath("//*[@id="kw"]").clear() #通过xpath表达式找到输入框,clear()清空输入框里的内容 llqdx.find_element_by_xpath("//*[@id="kw"]").send_keys("叫卖录音网") #通过xpath表达式找到输入框,send_keys()将内容写入输入框 llqdx.find_element_by_xpath("//*[@id="su"]").click() #通过xpath表达式找到搜索按钮,click()点击事件 time.sleep(3) #等待3秒 llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg") #将网页截图,保存到此目录 neir = llqdx.page_source #获取网页内容 print(neir) llqdx.quit() #关闭浏览器 pat = "(.*?) " title = re.compile(pat).findall(neir) #正则匹配网页标题 print(title)
PhantomJS浏览器伪装,和滚动滚动条加载数据
有些网站是动态加载数据的,需要滚动条滚动加载数据
实现代码
DesiredCapabilities 伪装浏览器对象
execute_script()执行js代码
current_url获取当前的url
#!/usr/bin/env python # -*- coding:utf8 -*- from selenium import webdriver #导入selenium模块来操作PhantomJS from selenium.webdriver.common.desired_capabilities import DesiredCapabilities #导入浏览器伪装模块 import os import time import re dcap = dict(DesiredCapabilities.PHANTOMJS) dcap["phantomjs.page.settings.userAgent"] = ("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0") print(dcap) llqdx = webdriver.PhantomJS(desired_capabilities=dcap) #实例化PhantomJS浏览器对象 llqdx.get("https://www.jd.com/") #访问网址 #模拟用户操作 for j in range(20): js3 = "window.scrollTo("+str(j*1280)+","+str((j+1)*1280)+")" llqdx.execute_script(js3) #执行js语言滚动滚动条 time.sleep(1) llqdx.get_screenshot_as_file("H:/py/17/img/123.jpg") #将网页截图,保存到此目录 url = llqdx.current_url print(url) neir = llqdx.page_source #获取网页内容 print(neir) llqdx.quit() #关闭浏览器 pat = "(.*?) " title = re.compile(pat).findall(neir) #正则匹配网页标题 print(title)
【转载自:http://www.lqkweb.com】
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/45086.html
摘要:上一篇文章网络爬虫实战请求库安装下一篇文章网络爬虫实战解析库的安装的安装在上一节我们了解了的配置方法,配置完成之后我们便可以用来驱动浏览器来做相应网页的抓取。上一篇文章网络爬虫实战请求库安装下一篇文章网络爬虫实战解析库的安装 上一篇文章:Python3网络爬虫实战---1、请求库安装:Requests、Selenium、ChromeDriver下一篇文章:Python3网络爬虫实战--...
摘要:,集搜客开源代码下载源开源网络爬虫源,文档修改历史,增补文字说明,增加第五章源代码下载源,并更换源的网址 showImg(https://segmentfault.com/img/bVvMn3); 1,引言 在Python网络爬虫内容提取器一文我们详细讲解了核心部件:可插拔的内容提取器类gsExtractor。本文记录了确定gsExtractor的技术路线过程中所做的编程实验。这是第二...
摘要:有一个模块其中实现了一个。但是感觉灵活性不大。接口如下它会获得一个实例,你可以在里面进行任意的操作。本部分到此结束。 webmagic有一个selenium模块,其中实现了一个SeleniumDownloader。但是感觉灵活性不大。所以我就自己参考实现了一个。 首先是WebDriverPool用来管理WebDriver池: import java.util.ArrayList; im...
摘要:而在不久前宣布支持模式而后跟随的新闻再次勾起我无尽的回忆。那么我们就来谈谈在和浏览器不原生支持模式下如何使用来实现模式进行动态数据的抓取。比较常见的例子在中进行转发。下面我们进行测试发现其可以正常的运行。 原文地址: http://52sox.com/python-use-h... 在Python中进行浏览器测试时,一般我们会选择selenium这样的库来简化我们工作量。而有些时候,为...
摘要:,引言最近一直在看爬虫框架,并尝试使用框架写一个可以实现网页信息采集的简单的小程序。本文主要介绍如何使用结合采集天猫商品内容,文中自定义了一个,用来采集需要加载的动态网页内容。 showImg(https://segmentfault.com/img/bVyMnP); 1,引言 最近一直在看Scrapy 爬虫框架,并尝试使用Scrapy框架写一个可以实现网页信息采集的简单的小程序。尝试...
阅读 1596·2021-11-22 14:45
阅读 1016·2021-11-17 09:33
阅读 3299·2021-09-02 09:48
阅读 956·2019-08-30 15:54
阅读 2744·2019-08-30 15:53
阅读 2526·2019-08-30 12:54
阅读 2226·2019-08-29 12:37
阅读 2404·2019-08-26 13:58