精华内容
下载资源
问答
  • 可视化自动抓取软件不用编程自动化抓取爬虫hawk5.2Hawk的含义为“鹰”,能够高效,准确地捕杀猎物。它的思想来源于Lisp语言,功能模仿了Linux工具awk。 特点如下: 智能分析网页内容,无需编程 所见即所得,可视化...
  • 讲解基于Python Selenium 的自动化数据采集,自动化框架设计,SEO搜索收录引擎与接口对接等实战项目
  • 关于selenium,最常用的用法还是自动化,selenium可以真实的自动开始一个浏览器,模拟用户操作,例如实现自动登录,自动翻页等等。 想了解更多的同学可以参照这个中文翻译文档 ...

    以下内容为本人原创,欢迎大家观看学习,禁止用于商业用途,转载请说明出处,谢谢合作!

    ·作者:@Yhen
    ·原文网站:CSDN
    ·原文链接:https://blog.csdn.net/Yhen1/article/details/105585188

    转载请说明此出处,侵权必究!谢谢合作!

      大噶好!我是python练习时长一个月的Yhen.很高兴能在这里和大家分享我的学习经验。作为小白,我在写代码的时候可能会遇到各种各样的BUG,我把我的一些经验分享给大家,希望对大家能有所帮助!

      今天要带大家用一个比较特别的爬虫方式——selenium来实现爬取百度图片里的海贼王图片。后面会把源码也给到大家,因为比较详细,所以篇幅可能会较长,所以如果只想看结果的同学可以直接去看后面的源码。

    一.前期准备

    今天会用到两个第三方库

    requests     必备爬虫库
    webdriver 浏览器驱动
    pyquery      解析网页内容

    安装方法:在终端输入pip install +库名(如:pip install requests)
    ②各种浏览器的webdriver浏览器驱动下载网址

    https://www.jianshu.com/p/6185f07f46d4

    webdriver要和py文件放在一起
    在这里插入图片描述

    二.思路分析

    闲来无事想爬点动漫图片玩玩
    爬什么动漫好呢?

    打开了百度图片 搜索了壁纸
    在动漫专栏专栏分区浏览一通

    就决定是你了 ——“海贼王”

    虽然我没怎么看过这部动漫

    但对它的精湛画工早有耳闻

    相信很多小伙伴都很钟爱这部动漫作品吧

    在这里插入图片描述
    里面的图片都是很酷的
    url :
    壁纸 卡通动漫 海贼王

    要知道,这里可不止这几十张图
    一直翻到到最底部
    一共是有447多张的图片
    在这里插入图片描述今天的目标就是把这447张图片一张不漏的都爬取下来

    有了需求,就来开始思路分析了:

    既然要爬的图片

    自然就很容易想到一种普遍的思路:
    1.先对首页界面发送请求,获取页面数据
    2.进行数据提取,获取图片的链接
    3.对图片链接发送请求,获取图片数据
    4.把图片保存到本地

    这不是就跟之前爬表情包一样嘛?so easy,10分钟给你搞定!

    但是…事实真的这么简单吗?

    来,我先带你用爬图片的通用方法进行演示

    首先是简单的导包和发送请求

    # 导入爬虫库
    import requests
    # 导入pyquery数据提取库
    from pyquery import PyQuery as pq
    
    # 首页网址
    url = "https://image.baidu.com/search/index?ct=&z=&tn=baiduimage&ipn=r&word=%E5%A3%81%E7%BA%B8%20%E5%8D%A1%E9%80%9A%E5%8A%A8%E6%BC%AB%20%E6%B5%B7%E8%B4%BC%E7%8E%8B&pn=0&istype=2&ie=utf-8&oe=utf-8&cl=&lm=-1&st=-1&fr=&fmq=1587020770329_R&ic=&se=&sme=&width=1920&height=1080&face=0&hd=&latest=&copyright="
    # 请求头
    headers ={"User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.9 Safari/537.36"}
    #对首页地址发送请求,返回文本数据
    response = requests.get(url).text
    print(response)
    

    是可以正常的得到数据的
    在这里插入图片描述

    然后就是数据提取了

    首先打开检查工具
    定位到第一张照片
    在右边可以看到在class 类选择器为main_img img-hover 里面的data-imgurl属性 对应着有一个链接 https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1296489273,320485179&fm=26&gp=0.jpg
    在这里插入图片描述

    访问一下这个URL
    在这里插入图片描述
    原来就是要找的图片详情页的

    所以接下来用pyquery来进行数据提取
    看看能不能把刚刚的链接提取出来

    因为这个不是今天的重点,我就直接给你们演示代码了。
    如果想知道pyquery怎么使用,
    可以去看我前面几篇博文

    # 数据初始化
    doc = pq(response)
    # 通过类选择器main_img img-hover 来提取数据 注意:中间的空格用.代替
    main_img = doc(".main_img.img-hover").text()
    print(main_img)
    

    打印下看看能不能得到想要的数据
    在这里插入图片描述

    oh no,怎么什么都没有?!
    在确定写的代码没有问题后,
    我的第一反应是:被反爬了!!!

    不要紧,如果是被反爬,在请求头加多几个参数就好了

    在这里插入图片描述
    我把请求数据类型,用户信息,防盗链都加进请求头里

    # 请求头
    #          浏览器类型
    headers ={"User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.9 Safari/537.36",
              # 请求数据类型
              "Accept':'application/json, text/javascript, */*; q=0.01",
              # 用户信息
              "Cookie':'BIDUPSID=19D65DF48337FDD785B388B0DF53C923; PSTM=1585231725; BAIDUID=19D65DF48337FDD770FCA7C7FB5EE199:FG=1; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; indexPageSugList=%5B%22%E9%AB%98%E6%B8%85%E5%A3%81%E7%BA%B8%22%2C%22%E5%A3%81%E7%BA%B8%22%5D; delPer=0; PSINO=1; BDRCVFR[dG2JNJb_ajR]=mk3SLVN4HKm; BDRCVFR[tox4WRQ4-Km]=mk3SLVN4HKm; BDRCVFR[-pGxjrCMryR]=mk3SLVN4HKm; BCLID=8092759760795831765; BDSFRCVID=KH_OJeC62A1E9y7u9Ovg2mkxL2uBKEJTH6aoBC3ekpDdtYkQoCaWEG0PoM8g0KubBuN4ogKK3gOTH4AF_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF=tJCHoK_MfCD3HJbpq45HMt00qxby26niWNO9aJ5nJDoNhqKw2jJhef4BbN5LabvrtjTGah5FQpP-HJ7tLTbqMn8vbhOkahoy0K6UKl0MLn7Ybb0xynoDLRLNjMnMBMPe52OnaIbp3fAKftnOM46JehL3346-35543bRTLnLy5KJYMDcnK4-XD653jN3P; ZD_ENTRY=baidu; H_PS_PSSID=30963_1440_21081_31342_30824_26350_31164",
              # 防盗链
              "Referer':'https://image.baidu.com/search/index?ct=&z=&tn=baiduimage&ipn=r&word=%E5%A3%81%E7%BA%B8%20%E5%8D%A1%E9%80%9A%E5%8A%A8%E6%BC%AB%20%E6%B5%B7%E8%B4%BC%E7%8E%8B&pn=0&istype=2&ie=utf-8&oe=utf-8&cl=&lm=-1&st=-1&fr=&fmq=1587020770329_R&ic=&se=&sme=&width=1920&height=1080&face=0&hd=&latest=&copyright="
              }
    

    再次请求,看看能否得到我要的数据

    在这里插入图片描述
    。。。。。。

    不是吧…还不行?

    自闭了…

    没事,这点挫折怎么能难倒我!!!

    来逆向分析一波

    我是通过类选择器main_img img-hover来定位数据的
    但是没有获取到任何的数据
    在代码正确且没有被反爬的前提下
    还出现这种情况

    那么

    …真相只有一个!
    我一开始请求到的首页数据根本就没有main_img img-hover这个类选择器!!!

    来验证下这个首页数据是不是罪魁祸首

    首先打印请求到的首页数据,然后在里面搜索main_img img-hover

    在这里插入图片描述

    搜索发现,冒红了
    果然是这个家伙在搞鬼啊
    长能耐了!居然不给我数据!

    那么事实证明,首页页面是动态数据,他的数据接口并不是首页的网址!

    现在这种情况后,有两种解决方法

    一.在这些茫茫接口中,找到首页页面数据的接口
    在这里插入图片描述

    二.直接用selenium对页面进行请求

    不知你们选择哪一种,反正让我在这么多的数据中找一个接口,我是拒绝的!!!多费事费力

    selenium它不香吗?

    为什么呢?

    因为用selenium把网页打开,所有信息就都会加载到了Elements那里,之后,就可以把动态网页用静态网页的方法爬取了。

    意思就是
    我们只要selenium对首页进行请求,获取到的数据,就是我们按f12后在控制台看到的源码!就不用在辛辛苦苦的找接口了!

    关于selenium,最常用的用法还是自动化,selenium可以真实的自动开始一个浏览器,模拟用户操作,例如实现自动登录,自动翻页等等。

    想了解更多的同学可以参照这个中文翻译文档

    https://selenium-python-zh.readthedocs.io/en/latest/

    OK说干就干

    三.代码实战

    首先是导包
    然后是配置浏览器,selenium有可视模式(真实的打开一个浏览器,你可以看到浏览器的操作)和静默模式(在后台运行,不可见)

    我采用静默模式。因为如果重点是爬虫,不需要看到浏览器操作,而且每次都打开一个浏览器太烦了,也耗内存。

    还有一个重要的点就是,要使用selenium首先要装一个对应你浏览器的webdriver驱动,并放到你py文件同路径下,这样selenium才能实现模拟浏览器操作

    下面是selenium的静默模式配置
    比较麻烦,但是都是死操作,大家熟悉即可

    from selenium import  webdriver #调用webdriver模块
    from selenium.webdriver.chrome.options import Options # 调用Options类
    
    chrome_options = Options() # 实例化Option
    chrome_options.add_argument('--headless') # 设置浏览器启动类型为静默启动
    driver = webdriver.Chrome(options = chrome_options) # 设置浏览器引擎为Chrome
    

    你要是问我具体每一步为什么这么设置,我也不知道,人家就是这么规定的。想要了解更多可以去看文档

    但是只是静默模式设置麻烦一点,可视模式两三行代码就设置完了

    设置完以后
    就可以用selenium来发送请求

    #对首页进行请求
    driver.get('https://image.baidu.com/search/index?ct=&z=&tn=baiduimage&ipn=r&word=%E5%A3%81%E7%BA%B8%20%E5%8D%A1%E9%80%9A%E5%8A%A8%E6%BC%AB%20%E6%B5%B7%E8%B4%BC%E7%8E%8B&pn=0&istype=2&ie=utf-8&oe=utf-8&cl=&lm=-1&st=-1&fr=&fmq=1587020770329_R&ic=&se=&sme=&width=1920&height=1080&face=0&hd=&latest=&copyright=')
    # 返回页面源码
    response = driver.page_source
    

    大家注意,要获得页面的源码要用driver.page_source
    而且是直接返回了字符串格式的数据

    来打印返回的数据看看
    在这里插入图片描述

    是成功的获取到了数据
    现在再在得到的数据中搜索 main_img img-hover
    看看这次是不是真的得到了想要的数据
    在这里插入图片描述

    这回总没问题了吧 我要的图片网址也在这了

    接下来就可以一路狂飙
    用pyquery来提取出图片网址
    首先 数据初始化,然后 通过类选择器提取数据,遍历以后 通过属性“data-imgurl”取出图片链接
    代码如下

    from pyquery import PyQuery as pq
    # 数据初始化
    doc = pq(response)
    # 通过类选择器提取数据
    x = doc(".main_img.img-hover").items()
    count = 0
    # 遍历数据
    for main_img in x :
         # 通过属性“data-imgurl”取出图片链接
         image_url = main_img.attr("data-imgurl")
         print(image_url)
    

    历经千辛万苦
    终于就要成功得到图片网址了
    害 不容易啊
    于是我怀着激动的心情去打印了图片网址
    在这里插入图片描述
    结果发现…
    WHAT???
    刚刚的页面四百多张图片,
    你就给我返回20条URL???剩下的你吃了????

    有意思有意思。跟我作对是吧,但是魔高一尺道高一丈

    我回到网页中去

    在刚刚的源码中ctrl + F 打开搜索功能
    搜索main_img img-hover在这里插入图片描述
    发现这里也只有一共只有20条搜索结果

    然后我马上想到,刚刚的四百多张图片是我通过不断下拉,不断加载得来的

    所以很有可能是因为初始也页面的没有加载完成,想要获取到剩下的url就必须让selenium操控浏览器不断下拉

    怎么实现?
    我也不知道哈哈哈哈
    但是我会百度,不会我就问度娘

    找到一篇csdn文章有介绍到怎么用selenium模拟下滑到底部操作
    原文链接
    https://blog.csdn.net/weixin_43632109/article/details/86797701
    在这里插入图片描述
    但是,要知道,要得到四百多张图片的数据,不是仅仅靠一次下滑底部的操作就能实现的,必须要让selenium在获取源码数据前执行多次下滑底部操作,才能得到全部的数据

    那么怎么实现多次操作呢
    我设置了一个for循环
    先看看代码

    import time
    # 执行24次下滑到底部操作
    for a in range(25):
         # 将滚动条移动到页面的底部
         js = "var q=document.documentElement.scrollTop=1000000"
         driver.execute_script(js)
         # 设置一秒的延时 防止页面数据没加载出来
         time.sleep(1)
    

    我设置了循环次数为25
    为什么是25呢?
    因为是我之前自己测试过,25次刚好能取到最后一张图片哈哈哈
    你们爬别的页面的时候就要自己测试循环次数了

    现在再来看看现在获取的图片链接
    在这里插入图片描述

    很明显这次获取的数据多了很多
    我点击最后一条链接

    在这里插入图片描述
    在这里插入图片描述
    可以看到,最后一个链接其实就是最后一张图片的链接
    所以是成功的得到了所有的图片链接了

    接下来就是对这些图片发送请求,获取数据并保存到本地就ok啦

    import request
    #定义count初始值为0
    count = 0
    # 遍历数据
    for main_img in x :
         # 通过属性提取出图片网址
         # 通过属性“data-imgurl”取出图片链接
         image_url = main_img.attr("data-imgurl")
    
         #对图片链接发送请求,获取图片数据
         image =requests.get(image_url)
    
         # 在海贼王图片下载文件夹下保存为jpg文件,以“wb”的方式写入 w是写入 b是进制转换
         f = open("海贼王图片下载/" + "{}.jpg".format(count), "wb")
         # 将获取到的数据写入 content是进制转换
         f.write(image.content)
         # 关闭文件写入
         f.close()
         #意思是 count = count+1
         count+=1
    

    发送请求还是用的经典爬虫库requests

    首先发送请求获取数据

    然后 在海贼王图片下载文件夹下保存为.jpg文件,以“wb”的方式写入 w是写入 b是进制转换

    将获取的数据写入进去,注意图片要用content进制转换

    最后关闭文件写入

    执行程序后
    看看能否把全部的图片都下载下来

    在这里插入图片描述
    完美!成功把网页上的一共447张的图片下载了下来
    在这里插入图片描述
    撒花完结!

    四.完整代码获取

    扫码关注我的微信公众号“Yhen杂文铺在后台回复“图片Spider”即可获取完整的源码啦!
    在这里插入图片描述

    五.往期文章回顾

    Yhen带你趣味入门Python①—Windows下Python下载及安装

    【python热搜爬虫+定时发送邮件操作①】不会吧不会吧!不会2020了还有人需要用软件看微博热搜吧?

    【python微博爬虫+定时发送邮件操作②】不会吧不会吧!不会2020了还有人需要用软件看微博热搜吧?

    【爬虫+数据可视化】Yhen手把手带你爬取CSDN博客访问量数据并绘制成柱状图

    【爬虫】Yhen手把手带你爬取去哪儿网热门旅游信息(并打包成旅游信息查询小工具

    【爬虫】Yhen手把手带你用python爬小说网站,全网打尽,想看就看!(这可能会是你看过最详细的教程)

    【实用小技巧】用python自动判断并删除目录下的空文件夹(超优雅)

    【爬虫+数据库操作】Yhen手把手带你用pandas将爬取的股票信息存入数据库!

    【selenium爬虫】
    Yhen手把手带你用selenium自动化爬虫爬取海贼王动漫图片

    【爬虫】秀才不出门,天下事尽知。你也能做到!Yhen手把手带你打造每日新闻资讯速达小工具。

    【爬虫】Yhen手把手带你用python爬取知乎大佬热门文章

    【爬虫】Yhen手把手教你爬取表情包,让你成为斗图界最靓的仔

    【前端】学过一天的HTML+CSS后,能做出什么有趣的项目?

      希望大家能够喜欢这篇文章
      如果可以的话,可以点个赞鼓励下嘛?加个关注更好哦!
      我是Yhen,下次见~

    展开全文
  • 自动化测试和爬虫基本是相同的操作,首先定位页面元素,再次爬虫是获取数据,测试是封装请求参数发送请求查看请求结果。 自动化测试包括接口测试、web测试、app测试,接口测试用request包,web测试可以用selenium,...

    自动化测试和爬虫基本是相同的操作,首先定位页面元素,再次爬虫是获取数据,测试是封装请求参数发送请求查看请求结果。

    自动化测试包括接口测试、web测试、app测试,接口测试用request包,web测试可以用selenium,安卓app测试则需要通过Appium服务器访问手机app。本文只讲述window电脑环境,Android手机系统app测试方法。

    一、环境准备:

             (1)需要安装软件:jdk8、Appium、AndroidSDK包,下载地址:

                          链接:https://pan.baidu.com/s/1b_FWWmc0q08ibIvr3Tb7-g
                           提取码:olzv

             (2)需要添加配置jdk8环境变量、AndroidSDK环境变量、Appium环境变量。

              (3)安装appium-python-client环境

    pip install appium-python-client

             (4)选择华为或小米等主流手机,以华为手机为例:

          设置——系统——关于手机——版本号,不停的点击“版本号”,直至变为开发模式,然后退回上一级(系统目录下),多出开发人员选项,进入开发人员选项,打开app调试。

              (5)判断环境变量配置是否成功,打开任意一个cmd黑窗口,输入:adb,如果不报错则环境变量配置成功。

    二、代码操作:

         (1)先启动Appium,点击Start Server,

      (2)判断设备是否连接成功;adb devices -l

        (3)python代码:

    from appium import webdriver
    from appium.webdriver.extensions.android.nativekey import AndroidKey
    import time
    
    desired_caps = {
      'platformName': 'Android',    # 被测手机是安卓
      'platformVersion': '9',    # 手机安卓版本
      'deviceName': 'xxx',    # 设备名,安卓手机可以随意填写
      'appPackage': 'tv.danmaku.bili',    # 启动APP Package名称
      'appActivity': '.ui.splash.SplashActivity',    # 启动Activity名称
      'unicodeKeyboard': True,  # 使用自带输入法,输入中文时填True
      'resetKeyboard': True,   # 执行完程序恢复原来输入法
      'noReset': True,       # 不要重置App
      'newCommandTimeout': 6000,
      'automationName': 'UiAutomator2'
      # 'app': r'd:\apk\bili.apk',
    }
    
    # 连接Appium Server,初始化自动化环境
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    
    # 设置缺省等待时间
    driver.implicitly_wait(5)
    
    # 如果有`青少年保护`界面,点击`我知道了`
    iknow = driver.find_elements_by_id("text3")
    if iknow:
        iknow.click()
    
    # 根据id定位搜索位置框,点击
    driver.find_element_by_id("expand_search").click()
    
    # 根据id定位搜索输入框,点击
    # sbox = driver.find_element_by_id('search_src_text')
    sbox = driver.find_element_by_accessibility_id('搜索查询')
    sbox.send_keys('白月黑羽')
    # 输入回车键,确定搜索
    driver.press_keycode(AndroidKey.ENTER)
    
    # driver.find_element_by_xpath("//*[@resource-id='tv.danmaku.bili:id/tabs']//android.widget.TextView[3]").click()
    # 选择(定位)所有视频标题
    eles = driver.find_elements_by_id("title")
    
    for ele in eles:
        # 打印标题
        print(ele.text)
    width = driver.get_window_size()['width']
    height = driver.get_window_size()['height']
    for i in range(1,100):
        time.sleep(5)
        driver.swipe(width / 2, height * 3 / 4, width / 2, height / 4);
    # titles = driver.find_elements_by_id("title")
    # play_num = driver.find_elements_by_id("play_num")
    # danmakus_num = driver.find_elements_by_id("danmakus_num")
    #
    # for j in titles:
    #     print(j.text)
    # for j in play_num:
    #     print(j.text)
    # for j in danmakus_num:
    #     print(j.text)
    input('**** Press to quit..')
    driver.quit()

      (4)pycharm中运行上述代码,则app中会搜索“白月黑羽”,并滑动列表。

    三、定位app中页面元素

        定位页面元素有两种方式;

      方式一:通过AndroidSDK提供的uiautomatorviewer查看,位置在androidsdk\tools\binuiautomatorviewer.bat,双击,

    方式二:通过Appium右上角的放大镜按钮调出,然后输入参数,参数和python中代码中相同,点击Start Session

     

     

     

     

     

    展开全文
  • 我们将爬虫的爬取过程分为网络请求,文本获取和数据提取3个部分。信息校验型反爬虫主要出现在网络请求阶段,这个阶段的反爬虫理念以预防为主要目的,尽可能拒绝爬虫程序的请求。动态渲染和文本混淆则出现在文本获取...


         我们将爬虫的爬取过程分为网络请求,文本获取和数据提取3个部分。信息校验型反爬虫主要出现在网络请求阶段,这个阶段的反爬虫理念以预防为主要目的,尽可能拒绝爬虫程序的请求。动态渲染和文本混淆则出现在文本获取及数据提取阶段,这个阶段的反爬虫理念以保护数据为主要目的,尽可能避免爬虫获取到重要数据。

    在这里插入图片描述

         特征识别反爬虫是指通过客户端的特征、属性或用户行为特点来区分正常用户和爬虫程序的手段。

    WebDriver识别

         爬虫程序可以借助渲染工具从动态网页中获取数据,“借助”其实是通过对应的浏览器驱动(及Webdriver)向浏览器发出指令的行为。也就是说,开发者可以根据客户端是否包含浏览器驱动这一特征来区分正常用户和爬虫程序。

    在这里插入图片描述

    WebDriver识别原理

         网页只要设置了检查webdriver的Javascript方法,就很容易发现爬虫。使用的方法就是Navigator对象的webdriver属性,用这个属性来判断客户端是否通过WebDriver驱动浏览器。如果监测到客户端的webdriver属性存在,则无法继续操作获取数据。selenium,Puppeteer都存在WebDriver属性。

    window.navigator.webdriver
    undefined
    

         监测结果有3种,分别是true、false和undefind。当我们使用渲染工具有webdriver属性时,navigation.webdriver的返回值时true。反之则会返回false或者undefind。

    在这里插入图片描述

    WebDriver识别的绕过方法

         了解了WebDriver识别的原理和返回值后,我们就能相处应对的办法。既然web Driver的识别依赖navigation.webdriver的返回值,那么我们在触发Javascript办法前将navigation.webdriver的返回值改为false或者undefind,问题就解决了。

    script = 'Object.defineProperty(navigator,"webdriver",{get:() => false,});'
    

    使用示例

    from selenium.webdriver import Chrome
    import time
    
    brower = Chrome(executable_path=r'D:\python\chromedriver_win32\chromedriver.exe')
    url = 'http://www.porters.vip/features/webdriver.html'
    brower.get(url)
    script = 'Object.defineProperty(navigator,"webdriver",{get:() => false,});'
    #运行Javascript
    brower.execute_script(script)
    #定位按钮并点击
    brower.find_element_by_css_selector('.btn.btn-primary.btn-lg').click()
    #定位到文章内容元素
    elements = brower.find_element_by_css_selector('#content')
    time.sleep(1)
    print(elements.text)
    brower.close()
    

         值得一提的是,淘宝的登录滑块验证页面也是用到了这个方法,使用selenium套件操作滑块后会出现“哎呀,出错了,点击刷新再来一次”这样的提示。

    注意

         这种修改该属性值的办法只在当前页面有效,当浏览器打开新标签或新窗口时需要重新执行改变navigator.webdriver值的JavaScript代码。

    在这里插入图片描述

    展开全文
  • JAVA爬虫 selenium自动化测试JAVA爬虫 selenium自动化测试的学习记录!为什么用—Selenium初识-selenium使用selenium遇到的问题,和解决方法 JAVA爬虫 selenium自动化测试的学习记录! 因为最近新型冠状病毒的事件,...
  • 今天给大家推荐一位 Python 类的公众号「AirPython」,作者:星安果,果哥有 7 年的编程学习经验,热爱Python 爬虫自动化实战、软件测试、Web、数据分析及软件测试...
  • Python爬虫:如何自动化下载海报? 上一讲中我给你讲了如何使用八爪鱼采集数据,对于数据采集刚刚入门的人来说,像八爪鱼这种可视化的采集是一种非常好的方式。它最大的优点就是上手速度快,当然也存在一些问题,...
  • 爬虫软件的使用

    2019-03-11 20:51:38
    一、软件的下载安装 二、软件界面介绍 三、软件的使用截图 效果截图一 效果截图二 四、爬虫软件的意义
  • 之前整理干货内容都是授人以鱼,这次想不一样一些,鱼和渔都想送给大家。给大家整理了2份福利:1、如何系统的学习Python自动化;2、如何系统的学学习Python爬虫与可视化。篇幅限制,内...
  • 本表几乎列出了所有无需图形界面环境下的浏览器开源项目,可用于自动化、测试或者其他用途。软件名介绍支持语言Awesomium基于Chromium无图形界面浏览器引擎。C++, .NETbenvBenv是node.js开发的无界面浏览器测试环境...
  • 八爪鱼爬虫软件

    千次阅读 2019-03-11 21:07:37
    前市面上常见的爬虫软件一般可以划分为云爬虫和采集器两种: 所谓云爬虫就是无需下载安装软件,直接在网页上创建爬虫并在网站服务器运行,享用网站提供的带宽和24小时服务; 采集器一般就是要下载安装在本机,然后...
  • Web自动化selenium技术快速实现爬虫

    千次阅读 2018-09-17 21:12:05
    selenium是大家众所周知的web自动化测试框架,主要用来完成web网站项目的自动化测试,但其实如果要实现一个web爬虫,去某些网站爬取数据,其实用selenium来实现也很方便。 比如,我们现在要实现一个这样的需求:...
  • 一起学爬虫(Python) — 19 年轻人,进来学自动化

    千次阅读 多人点赞 2020-12-23 11:44:50
    前言 Hello,大家好,今天是早起的小泽...今天我们说到的自动化,不是你们可能听过很多的无人驾驶,机器人鸭什么的,就是没有那么高级哈。 这个自动化呢,在python里面用一个模块来实现:selenium 如果缺少这个东西呢
  • web开发—最火的Python web框架Django 网络编程——支持高并发的Twisted网络框架 ... 自动化运维——问问中国的每个运维人员,运维人员必须会的语言是什么 游戏开发——在网络游戏开发中Python也有很多应用 ...
  • 常见的爬虫软件

    万次阅读 2019-05-20 17:04:18
    前市面上常见的爬虫软件一般可以划分为云爬虫和采集器两种: 所谓云爬虫就是无需下载安装软件,直接在网页上创建爬虫并在网站服务器运行,享用网站提供的带宽和24小时服务; 采集器一般就是要下载安装在本机,然后在...
  • 放大招-自动化浏览的工具介绍 相关工具的下载与安装 selenium自动化测试,谷歌浏览器(Chrome)驱动对照表:chrome浏览器和驱动映射关系及下载地址 - 西边人西说测试.软件测试资源站 - CSDN博客 ...
  • 全程web界面操作的爬虫系统,预设定全程一体操作,使简单的爬虫直接放置链接自动提取,然后复杂度评级高的,要用到专业知识,后期想做到全程web端创建爬虫自动写入爬虫规则代码,然后界面点击直接部署分布式到...
  • 背景之前整理干货内容都是授人以鱼,这次想不一样一些,鱼和渔都想送给大家。给大家整理了3份福利:1、如何系统的学学习Python爬虫与可视化2、如何系统的学习Python自动化3、SQ...
  • 章节4:【爬虫与信息搜集】【Selenium网页自动化】 章节5:【好玩儿DIY】之【二维宇宙生命模拟与思考】 章节6:【好玩儿DIY】之【架设服务】 章节7:【好玩儿DIY】之【手写一个加解密带GUI程序】 章节8:【编程让生活更...
  • RPA机器人、python、爬虫自动化

    千次阅读 2020-05-20 14:08:52
    自动化,一步步的前进,都源于公司的一个需求:实现自动找到电脑存储的号码excel文件,将excel里边的号码按靓号规则按进行归类,写入新得excel文件里。当时的这个需求,公司请了RPA的厂家来开发,当然,项目最后没能...
  • 运行之后就可以发现,Python自动打开了一个Chrome浏览器,然后按照我们的指令搜索指定的内容并打开指定的网页。 二、基本知识 1.浏览器的创建 Selenium支持非常多的浏览器,如IE(7, 8, 9, 10, 11),Mozilla、Firefox...
  • 抖音爬虫(基于自动化测试)

    万次阅读 2018-07-25 16:58:27
    这是一篇比较粗糙的...解决方法:手机模拟器 + 中间抓包工具 + 自动化控制脚本 + 下载脚本   相关依赖: 手机模拟器: Genymotion(这是火箭速度的模拟器,AndroidStd自带的模拟器不能安装相关的apk) 抓包...
  • SeleniumSelenium是一个自动化测试工具,可以驱动浏览器执行特定的动作,如点击,下拉等操作。对于一些javascript渲染的页面,这种抓取方式非常有效,做到可见即可爬。ChromeDriver、GeckoDriver只有安装了...
  • PySimpleGUI图形界面绘制及办公自动化软件的制作

    千次阅读 多人点赞 2020-12-15 21:32:53
    PySimpleGUI图形界面绘制及办公自动化软件的制作1 PySimpleGUI安装2 PySimpleGUI制作简易弹窗界面2.1 两种界面设计模式2.2 制作弹窗2.3 文字内容弹窗2.4 获取用户输入的弹窗2.5 文件选择弹出窗口2.6 文件夹选择...
  • 国内外爬虫软件对比

    万次阅读 2016-11-22 16:43:26
    因为工作的关系需要收集很多信息,每天的大部分时间都花在浏览网页上。...使用DIFFBOT 采集网络数据不需要编写规则,全程可视操作,简单易上手。 三大功能模块BULK API, CRAWLBOT, CUSTOM API (An
  • 网络爬虫软件是一种按照一定的规则,自动地抓取网站信息的程序或者脚本。 2、网络爬虫软件有什么用? 通过这个工具,可以抓取整个行业、企业友商的各类公开的信息。 3、网络爬虫软件效果如何? ...
  • 用python制作一款爬虫软件,爬取公众号文章信息,爬虫之路,永无止境!!! 今天拿手机看公众号里面的文章,不小心退出来,进去之后还得一页一页的翻,好麻烦,突发奇想,把信息爬下来,想看哪个看哪个。。嘿嘿,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,920
精华内容 9,568
关键字:

自动化爬虫软件

爬虫 订阅