添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
  • name:根据是否与给定的 name匹配, 筛选cookie(值为空则忽略 name筛选条件)
  • domain:根据是否完全与给定的 domain比如 '.winrobot360.com'匹配, 或是否是其的子域名, 筛选cookie(浏览器类型为IE或值为空则忽略 domain筛选条件)
  • path:根据是否与给定的path比如 '/', 筛选cookie(浏览器类型为IE或值为空则忽略 path筛选条件)
  • list[dict]:返回筛选到的cookie列表, 列表项键包括'domain'、'expirationDate'、'name'、'value'、'httpOnly'..., 集合中的值可以通过比如 item['value'] 的方式获取
  • 获取当前激活网页的cookie信息

    from xbot import web
    def main(args):
        get_borwser_cookie('cef')
        # get_borwser_cookie('chrome')
        # get_borwser_cookie('ie')
    def get_borwser_cookie(mode):
        browser = xbot.web.get_active(mode)
        cookie_list = browser.get_cookies(domain='www.baidu.com')
        print(cookie_list)
        i = 0
        for cookie in cookie_list:
            print(i)
            print(cookie['name'] + '    '+cookie['value'])
            i += 1
    

    activate

    激活目标网页

    activate(self)

    激活标题为 百度 的网页

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        browser.activate()
    
    

    跳转到新网页

    navigate(self, url, * , load_timeout=20)

  • url:新网页地址
  • load_timeout:等待加载超时时间, 默认超时时间20s, 如果网页超时未加载完成则抛出UIAError异常
  • 获取标题为 百度 的网页并将该网页跳转到 淘宝 网页

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        browser.navigate('www.taobao.com')
    

    go_back

    go_back(self, * , load_timeout=20)

  • load_timeout:等待加载超时时间, 默认超时时间20s, 如果网页超时未加载完成则抛出UIAError异常
  • 获取标题为 淘宝 的网页并后退

    from xbot import web
    def main(args):
        browser = web.get('淘宝', None, 'chrome')
        browser.go_back()
    

    go_forward

    go_forward(self, * , load_timeout=20)

  • load_timeout:等待加载超时时间, 默认超时时间20s, 如果网页超时未加载完成则抛出UIAError异常
  • 获取标题为 百度 的网页并前进

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        browser.go_forward()
    

    reload

    网页重新加载

    reload(self, * , ignore_cache=False, , load_timeout=20)*

  • ignore_cache:是否忽略缓存,默认不忽略
  • load_timeout:等待加载超时时间, 默认超时时间20s, 如果网页超时未加载完成则抛出UIAError异常
  • 获取标题为 百度 的网页不忽略缓存重新加载

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        browser.reload(True)
    

    stop_load

    网页停止加载

    stop_load(self)

    获取标题为 百度 的网页并停止加载

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        browser.stop_load()
    

    is_load_completed

    判断网页是否加载完成

    is_load_completed(self)

  • bool:返回网页是否加载完成,完成返回True,否则返回False
  • 获取标题为 百度 的网页并判断其是否加载完成

    from xbot import web
    def main(args):
        browser = web.get('百度', None, 'chrome')
        is_load_completed = browser.is_load_completed()
    

    wait_load_completed

    等待网页加载完成

    wait_load_completed(self, timeout=20)

    获取当前激活的窗口并等待其加载完成

    from xbot import web
    def main(args):
        browser = web.get_active()
        browser.wait_load_completed()
    

    close

    close(self)

    获取当前激活的窗口并关闭

    from xbot import web
    def main(args):
        browser = web.get_active()
        browser.close()
    

    execute_javascript

    在网页元素上执行JS脚本

    execute_javascript(self, code, argument=None)

  • code:要执行的JS脚本,必须为javascript函数形式
  • argument:要传入到JS函数中的参数,必须为字符串,如果需要传入其他类型可以先将其转为JSON字符串形式
  • Any:返回JS脚本执行结果
  • 获取当前激活的网页,在此页面上执行一段JS函数并获取其返回值

    from xbot import web, print
    def main(args):
        page = web.get_active()
        code = """
        function (context, args) {
                // context为null
                // args表示输入的参数
                return "hello " + args;
        js_result = page.execute_javascript(code, 'james')
        print(js_result) # 打印'hello james'
    

    scroll_to

    鼠标滚动网页

    scroll_to(self, * , location='bottom', behavior='instant', top=0, left=0)

  • location:网页要滚动到的位置, 默认滚动到底部
    • 'bottom':滚动到底部
    • 'top':滚动到顶部
    • 'point':滚动到指定位置
    • behavior:网页滚动效果, 默认瞬间滚动
      • 'instant':瞬间滚动
      • 'smooth':平滑滚动
      • top:滚动到指定位置的纵坐标
      • left:滚动到指定位置的横坐标
      • 获取当前激活的网页并使用鼠标平滑滚动网页至底部

        from xbot import web
        def main(args):
            browser = web.get_active()
            browser.scroll_to(location='bottom', behavior='smooth')
        

        获取当前激活的网页并使用鼠标平滑滚动网页至 top:100,left:100 的位置

        from xbot import web
        def main(args):
            browser = web.get_active()
            browser.scroll_to(location='point', behavior='smooth', top=100, left=100)
        

        handle_javascript_dialog

        处理网页对话框

        handle_javascript_dialog(self, dialog_result='ok', * , text=None, wait_appear_timeout=20)

      • dialog_result:网页对话框处理方式
        • 'ok':确定
        • 'cancel':取消
        • text:输入网页对话框的内容, 可为None
        • wait_appear_timeout:等待网页对话框出现, 默认超时时间20s, 如果网页超时未加载完成则抛出UIAError异常
        • 处理当前网页的对话框,并将 helloword 填写到对话框中

          from xbot import web
          def main(args):
              browser = web.get_active()
              browser.handle_javascript_dialog('ok', text='helloword')
          

          get_javascript_dialog_text

          获取网页对话框内容(Chrome不支持此操作)

          get_javascript_dialog_text(self, * , wait_appear_timeout=20)

        • wait_appear_timeout:等待网页对话框出现,默认超时时间20s,如果网页超时未加载完成则抛出UIAError异 常
        • str:返回网页对话框的内容
        • 获取当前激活网页中的对话框内容

          from xbot import web
          def main(args):
              browser = web.get_active()
              content = browser.get_javascript_dialog_text()
          

          start_monitor_network

          开始监听网页请求(Chrome,ie不支持此操作)

          start_monitor_network(self)

          开始监听当前激活网页请求,进而获取请求结果,最后停止监听网页请求

          from xbot import web
          def main(args):
              browser = web.get_active()
              browser.start_monitor_network()
              browser.reload()
              network_result_list = browser.get_responses(url='baidu',use_wildcard=False, resource_type='All')
              browser.stop_monitor_network()
          

          stop_monitor_network

          停止监听网页请求(Chrome,ie不支持此操作)

          stop_monitor_network(self)

          开始监听当前激活网页请求,进而获取请求结果,最后停止监听网页请求

          from xbot import web
          def main(args):
              browser = web.get_active()
              browser.start_monitor_network()
              browser.reload()
              network_result_list = browser.get_responses(url='baidu',use_wildcard=False, resource_type='All')
              browser.stop_monitor_network()
          

          get_responses

          获取网页请求结果(Chrome,ie不支持此操作)

          get_responses(self, url, * , use_wildcard=False,resource_type='All')

        • url:资源路径Url
        • use_wildcard:是否使用通配符方式匹配, 默认为False模糊匹配, 如果为True则使用通配符方式匹配
        • resource_type:要过滤的网页请求结果类型, 默认为All,包括All, XHR, Script, Stylesheet, Image, Media, Font, Document, WebSocket, Manifest, TextTrack, Fetch, EventSource, Other
        • list[dict]:返回获取到的网页请求结果列表, 列表项键包括'url'、'type'、'body'、'base64Encoded',集合中的值可以通过比如 item['body'] 的方式获取"
        • 获取当前激活网页中的对话框内容

          from xbot import web
          def main(args):
              browser = web.get_active()
              browser.start_monitor_network()
              browser.reload()
              network_result_list = browser.get_responses(url='baidu',use_wildcard=False, resource_type='All')
              browser.stop_monitor_network()
          

          wait_appear

          等待网页元素出现

          wait_appear(self, selector_or_element, timeout=20)

        • selector_or_element:要等待的目标元素, 支持以下格式:
          • 选择器名称:str 类型
          • 选择器对象:Selector 类型
          • Web元素对象:WebElement 类型
          • timeout:等待网页元素出现超时时间, 默认超时时间20s
          • bool:返回网页元素是否出现,出现返回True,否则返回False
          • 等待当前激活的网页中出现与元素选择器 百度一下 匹配的网页元素

            from xbot import web
            def main(args):
                browser = web.get_active()
                is_appear = browser.wait_appear('百度一下')
            

            wait_disappear

            等待网页元素消失

            wait_disappear(self, selector_or_element, timeout=20)

          • selector_or_element:要等待的目标元素, 支持以下格式:
            • 选择器名称:str 类型
            • 选择器对象:Selector 类型
            • Web元素对象:WebElement 类型
            • timeout:等待网页元素消失超时时间,默认超时时间20s
            • bool:返回网页元素是否消失的结果,消失返回True,否则返回False
            • 等待当前激活的网页中与元素选择器 百度一下 匹配的网页元素消失

              from xbot import web
              def main(args):
                  browser = web.get_active()
                  is_disappear = browser.wait_disappear('百度一下')
              

              find_all

              在当前网页中获取与选择器匹配的相似网页元素列表

              find_all(self, selector, * , timeout=20)

            • selector:要等待的目标元素, 支持以下格式:
              • 选择器名称:str 类型
              • 选择器对象:Selector 类型
              • timeout:获取网页相似元素列表超时时间,默认超时时间20s,匹配元素超时未找到则抛出UAIError异常
              • List[WebElement]:返回和目标元素相似网页元素列表
              • 在当前激活的网页中获取与元素选择器 百度一下 匹配的所有元素的列表

                from xbot import web
                def main(args):
                    browser = web.get_active()
                    list_web_element = browser.find_all('百度一下')
                

                find_all_by_css

                在当前网页中获取符合CSS选择器的网页元素列表

                find_all_by_css(self, css_selector, * , timeout=20)

              • css_selector:CSS选择器 (str)
              • timeout, 获取网页相似元素列表超时时间, 默认超时时间20s, 匹配元素超时未找到则抛出UAIError异常
              • List[WebElement]:返回相似网页元素列表
              • 在当前激活的网页中获取与CSS选择器 百度一下 匹配的全部网页元素列表

                from xbot import web
                def main(args):
                    browser = web.get_active()
                    list_web_element = browser.find_all_by_css('百度一下')
                

                find_all_by_xpath

                在当前网页中获取符合Xpath选择器的网页元素列表

                find_all_by_xpath(self, xpath_selector, * , timeout=20)

              • xpath_selector:Xpath选择器 (str)
              • timeout:获取网页相似元素列表超时时间,默认超时时间20s,匹配元素超时未找到则抛出UAIError异常
              • List[WebElement]:返回相似网页元素列表
              • 在当前激活的网页中获取与Xpath选择器 百度一下 匹配的全部网页元素集合

                from xbot import web
                def main(args):
                    browser = web.get_active()
                    list_web_element = browser.find_all_by_xpath('百度一下')
                

                在当前网页中获取与选择器匹配的网页元素对象

                find(self, selector, * , timeout=20)

              • selector:要等待的目标元素, 支持以下格式:
                • 选择器名称:str 类型
                • 选择器对象:Selector 类型
                • timeout:获取目标网页元素对象超时时间,默认超时时间20s,匹配元素超时未找到则抛出UAIError异常
                • WebElement:返回目标网页元素对象
                • 在当前激活的网页中获取与元素选择器 百度一下 匹配的元素并返回第一个

                  from xbot import web
                  def main(args):
                      browser = web.get_active()
                      web_element = browser.find('百度一下')
                  

                  find_by_css

                  在当前网页中获取符合CSS选择器的网页元素对象

                  find_by_css(self, css_selector, * , timeout=20)

                • css_selector:CSS选择器 (str)
                • timeout:以CSS选择器获取网页元素对象超时时间,默认超时时间20s,匹配元素超时未找到则抛出UAIError 异常
                • WebElement:返回网页元素对象
                • 在当前激活的网页中获取符合CSS选择器 百度一下 的网页元素并返回第一个

                  from xbot import web
                  def main(args):
                      browser = web.get_active()
                      web_element = browser.find_by_css('#su')
                  

                  find_by_xpath

                  在当前网页中获取符合Xpath选择器的网页元素对象

                  find_by_xpath(self, xpath_selector, * , timeout=20)

                • xpath_selector:Xpath选择器 (str)
                • timeout:以Xpath选择器获取网页元素对象超时时间,默认超时时间20s,匹配元素超时未找到则抛出 UAIError异常
                • WebElement:返回网页元素对象
                • 在当前激活的网页中获取与Xpaht选择器 百度一下 匹配的网页元素并返回第一个

                  from xbot import web
                  def main(args):
                      browser = web.ge_active()
                      web_element = browser.find_by_xpath('//*[@id="su"]')
                  

                  is_element_displayed

                  网页元素是否可见

                  is_element_displayed(self, selector)

                • selector:selector:要等待的目标元素, 支持以下格式:
                  • 选择器名称:str 类型
                  • 选择器对象:Selector 类型
                  • bool,返回网页元素是否可见, 可见返回True,不可见返回False
                  • 在当前激活的网页中判断与元素选择器 百度一下 匹配的网页元素是否可见

                    from xbot import web
                    def main(args):
                        browser = web.get_active()
                        is_displayed = browser.is_element_displayed('百度一下')
                    

                    extract_table

                    获取选择器对应表格数据

                    extract_table(self, table_selector, * , timeout=20)

                  • table_selector:表格选择器, 支持以下格式:
                    • 选择器名称:str类型
                    • 选择器对象:TableSelector类型
                    • timeout:在网页上查找和目标元素相似的元素列表超时时间,默认超时时间20s,获取表格数据失败则抛出 UAIError异常
                    • list:返回网页上与目标元素相似的元素列表
                    • 在当前激活的网页中获取与表格选择器 数据表格 匹配的元素列表

                      from xbot import web
                      def main(args):
                          browser = web.get_active()
                          table_list = browser.extract_table('数据表格')
                      
                      问题没有解决?去社区提问 all right reserved,powered by Gitbook
  •