用js采集网页数据并插入数据库最快的方法

今天教大家一个快速采集网站数据的方法,因为太晚了,直接上例子,这里以采集易车网的产品数据为例。

思路:利用js获取网页数据并生成sql命令,执行sql命令把采集的数据插入数据库。

1.用谷歌浏览器或者火狐浏览器打开网站:http://car.bitauto.com/(品牌大全),http://car.bitauto.com/audi/(车型大全)

2.按F12进入调试模式,选择console并敲入以下代码

// JavaScript Document
(function() {
  var hm = document.createElement("script");
  hm.src = "http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
setTimeout(function(){
    $.ajaxSettings.async = false;
    //var data = [];
    var sql = '';
$(".list_pic li").each(function(index, element) {
    var brand ={url: $(this).find("a:eq(1)").attr('href'),name:$(this).find("a:eq(1)").text(),cars:[]};
    sql += "INSERT INTO `dp_jgcrm_brand`(pid,title) VALUES('0', '"+$(this).find("a:eq(1)").text()+"');\r\n\
    set @pid = LAST_INSERT_ID();\r\n";
    $.get(brand.url,function(html){
        $(html).find(".cartype-section .p-list .name a").each(function(index, element) {
            sql += "INSERT INTO `dp_jgcrm_brand`(pid,title) VALUES(@pid, '"+$(this).text()+"');\r\n";
            brand.cars.push($(this).text());
        });
    });

    
    //data.push(brand);
});
//console.log(data);
console.log(sql)
},2000)

3.复制sql命令,剩下的你们都应该知道了吧

学程序的难点是思路和方法,语言只是工具,如果你愿意与我一同学习,可以加我的微信:fafa2088

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,作为AI语言模型,我无法访问和修改数据库,这需要服务器端的编程语言和数据库管理系统。如果您需要将数据插入数据库,您需要使用服务器端编程语言(如PHP、Python、Node.js等)编写API,并使用数据库管理系统(如MySQL、MongoDB等)来存储数据。在JavaScript中,您可以使用AJAX或Fetch API将数据从客户端发送到服务器端。以下是一个使用PHP和MySQL将数据插入数据库的示例: 1. 创建一个HTML表单: ``` <form> <label for="name">Name:</label> <input type="text" id="name" name="name"> <label for="email">Email:</label> <input type="text" id="email" name="email"> <button type="submit">Submit</button> </form> ``` 2. 使用JavaScript监听表单的提交事件,并使用AJAX或Fetch API将数据发送到服务器端: ``` const form = document.querySelector('form'); form.addEventListener('submit', (event) => { event.preventDefault(); // 防止表单提交刷新页面 const name = document.querySelector('#name').value; const email = document.querySelector('#email').value; const data = { name, email }; fetch('/api/insert.php', { method: 'POST', body: JSON.stringify(data), headers: { 'Content-Type': 'application/json' } }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error(error)); }); ``` 3. 在服务器端使用PHP处理请求并将数据插入数据库: ``` <?php header('Content-Type: application/json'); $data = json_decode(file_get_contents('php://input'), true); $name = $data['name']; $email = $data['email']; $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "INSERT INTO MyGuests (firstname, email) VALUES ('$name', '$email')"; if ($conn->query($sql) === TRUE) { echo json_encode(array('status' => 'success')); } else { echo json_encode(array('status' => 'error', 'message' => $conn->error)); } $conn->close(); ?> ``` 请注意,此示例仅用于演示目的,实际应用程序需要考虑安全性和可伸缩性等问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值