随着技术的发展,利用人工智能辅助编程已经成为提高开发效率的重要手段。本文将介绍如何结合Qwen-coder模型和Cursor AI代码生成工具来加速软件开发流程。特别是针对Qwen/Qwen2.5-Coder-32B-Instruct模型的应用场景及优势,并探讨通过代理机制将开发需求转化为高质量代码的实践。接下来我将展示如何利用Cursor实现零基础爬虫。
Cursor : Cursor - The AI Code Editor
1. 什么是cursor
Cursor 是一款旨在帮助开发者提高编码效率的智能代码编辑器。它结合了人工智能技术,能够自动完成代码、提供代码建议、进行错误检测和修复等功能,从而让编程变得更加高效和准确。主要有以下特点:
- 集成开发环境(IDE)支持:可以与流行的IDEs(如VS Code, IntelliJ IDEA等)无缝集成,增强现有的开发体验。
- 跨平台兼容性:支持Windows, macOS, Linux等多种操作系统,确保不同平台上的用户都能享受到一致的服务。
- 团队协作:支持多人协作,允许多个开发者同时在同一文件上工作,并能实时看到彼此的更改。
- 持续学习能力:通过分析用户的编码模式,Cursor可以不断学习并优化其推荐算法,以更好地适应每个用户的独特需求。
2. 配置cursor
- 添加Qwen-coder模型
- 配置API和URL(siliconflow:SiliconCloud)
3. prompt工程
请帮我编写一个Node程序,去爬取微博的热榜。要求:
1.使用 request-promise 和 cheerio
2.目标网站:@https://tophub.today/n/KqndgxeLl9
3.爬取表格中热榜的排名、标题、热度、链接、并保存到csv文件中 请一步步思考,你可以打开目标网站分析其网页结构,并编写代码
就这样轻松地实现了爬虫
4. 代码分析
这段代码使用了 request-promise 和 cheerio 库来抓取并解析网页内容,然后将解析后的数据保存到一个 CSV 文件中。具体来说,它从 tophub.today 抓取微博热搜榜的数据,并将其保存为 hot_list2.csv 文件。
4.1 依赖库
- request-promise:用于发送 HTTP 请求。
- cheerio:用于解析 HTML 字符串,类似于 jQuery 的语法。
- csv-writer:用于生成 CSV 文件。
4.2 代码解析
- 导入依赖
const request = require('request-promise');
const cheerio = require('cheerio');
const createCsvWriter = require('csv-writer').createObjectCsvWriter;
-
request-promise用于发送 HTTP 请求并返回 Promise。 -
cheerio用于解析 HTML 字符串。 -
csv-writer用于创建和写入 CSV 文件。 -
配置项
const HOT_URL = 'https://tophub.today/n/KqndgxeLl9';
-
HOT_URL是要抓取的热榜页面 URL。 -
发送请求并解析 HTML
request(HOT_URL)
.then(html => {
// 解析 HTML 得到热榜
const $ = cheerio.load(html);
const hotList = [];
$('.jc table tr').each((index, element) => {
const rank = $(element).find('td:nth-child(1)').text().trim();
const title = $(element).find('td:nth-child(2)').text().trim();
const heat = $(element).find('td:nth-child(3)').text().trim();
const link = $(element).find('td:nth-child(2) a').attr('href').trim();
hotList.push({
rank,
title,
heat,
link
});
});
// 创建 CSV 写入器
const csvWriter = createCsvWriter({
path: 'hot_list2.csv',
header: [
{ id: 'rank', title: '排序' },
{ id: 'title', title: '标题' },
{ id: 'heat', title: '热度' },
{ id: 'link', title: '链接' },
]
});
// 写入 CSV 文件
csvWriter.writeRecords(hotList)
.then(() => console.log('CSV file has been saved.'));
});
- 发送请求:使用
request-promise发送 HTTP GET 请求到HOT_URL,并获取 HTML 响应。 - 解析 HTML:使用
cheerio加载 HTML 字符串,并选择表格中的每一行(tr元素)进行处理。 - 提取数据:对于每一行,提取排名、标题、热度和链接信息,并存储在
hotList数组中。 - 创建 CSV 写入器:定义 CSV 文件的路径和列头。
- 写入 CSV 文件:将
hotList中的数据写入 CSV 文件,并在完成时输出一条消息。
4.3 详细步骤
-
导入依赖库:
- 使用
require导入request-promise、cheerio和csv-writer。
- 使用
-
配置 URL:
- 定义要抓取的热榜页面 URL。
-
发送 HTTP 请求:
- 使用
request-promise发送 GET 请求,获取 HTML 响应。
- 使用
-
解析 HTML:
- 使用
cheerio加载 HTML 字符串,选择表格中的每一行(tr元素)。 - 提取每行的排名、标题、热度和链接信息,并存储在
hotList数组中。
- 使用
-
创建 CSV 写入器:
- 定义 CSV 文件的路径和列头。
-
写入 CSV 文件:
- 将
hotList中的数据写入 CSV 文件,并在完成时输出一条消息。
- 将
4.4 运行结果
代码执行后,会在当前目录下生成一个名为 hot_list2.csv 的文件,其中包含从 tophub.today 抓取的微博热搜榜数据。
5. 总结
Cursor 作为一个智能代码编辑器,不仅提供了强大的代码辅助功能,还促进了更高效的开发流程。对于希望提升生产力和个人技能的开发者来说,Cursor 是一个非常有价值的工具。随着技术的进步,这类工具将会越来越重要,成为现代软件开发不可或缺的一部分。