2020-03-23 油猴爬虫 GET

通过油猴的 GM_xmlhttpRequest 可以编写爬虫脚本。记录如下:

需要权限

// @grant GM_xmlhttpRequest
// @connect xxx.com

示例

通过 get 方法访问指定网址,爬取列表内容,并弹窗显示内容。


目标网页

代码如下:

// ==UserScript==
// @name         learningTampermonkey
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @include      http://*/*
// @include      https://*/*
// @require      https://cdn.staticfile.org/jquery/1.9.1/jquery.min.js
// @grant        GM_xmlhttpRequest
// @grant        GM_registerMenuCommand

// @connect      gongju.dadiyouhui.cn

// ==/UserScript==



(function() {
    'use strict';

    // Your code here...
    var learningTampermonkey = function(){
        var learningTest = function(){
            GM_xmlhttpRequest ( {
                method:     "GET",
                url:        'http://gongju.dadiyouhui.cn/zhekoutb_zhide/b60010/tb_zhide.htm',
                onload:     function (response) {
                    console.log('已连接');
                    // 获取网页内容
                    var webText = response.responseText;
                    // 创建虚拟 DOM 元素
                    var el = document.createElement('html');
                    el.innerHTML = webText;
                    // 提取虚拟 DOM 元素内目标
                    var centObj = el.getElementsByClassName('cent');
                    // 循环输出商品信息
                    var alertObj=('商品信息\n');
                    for (var i = 0; i < centObj.length; i++) {
                        var titleObj = centObj[i].querySelector('h3');
                        var priceObj = centObj[i].querySelectorAll('div')[2];
                        alertObj += titleObj.innerText + "\n";
                        alertObj += priceObj.innerText + "\n";
                    }
                // 弹出商品信息提示窗
                    alert(alertObj);
                },
                onerror:    function (){
                    alert('连接失败');
                }
            } );
        };


        var RegMenu=function(){
            GM_registerMenuCommand("代码测试",function(){
                learningTest();
            });
        };

        this.init=function(){
            RegMenu();
        }
    }

    var codeTest = new learningTampermonkey();
    codeTest.init();
})();

爬虫结果

成功弹窗
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容