ts | js | 爬虫小公举分享

Curl转Code

快速将curl转为各种语言的代码; 便于提取请求头之类, 或者微改直接使用

  • https://curlconverter.com/node-axios/ (有点慢, 但是很全)
  • https://www.lddgo.net/convert/curl-to-code (没有axios, 我喜欢用axios)

使用…
抓取地址, 使用浏览器或者其他抓包工具都可, 这里用chrome浏览器
ts | js | 爬虫小公举分享_第1张图片
转换相关语言代码, 以js使用axios为例
ts | js | 爬虫小公举分享_第2张图片

根据json数据生成ts类型

写ts的时候麻烦定义类型?

  • 摸鱼工具:
  • https://js2ts.com/json-to-typescript
  • https://quicktype.io/typescript
  • https://tooltt.com/json2typescript/ (快一点)
  • https://json2ts.dev/ (第二快)

ts | js | 爬虫小公举分享_第3张图片

js/ts json存excel

安装(pnpm超好用)

pnpm i xlsx
import XLSX from 'xlsx';
/**
 * 入表
 * @param data 
 * @param dirPath 
 * @param fileName 
 */
export function saveInExcel(data: any[], dirPath: string, fileName: string) {
    const worksheet = XLSX.utils.json_to_sheet(data);
    // 创建工作簿
    const workbook = {
        Sheets: {
            data: worksheet
        },
        SheetNames: ['data']
    };
    const filePath = `${dirPath + fileName}.xlsx`;
    XLSX.writeFile(workbook, filePath);
}
/**
 * 将对象的第一层属性转为基本类型, 
 * 否则excel的列会是空数据, 不能使用引用数据类型
 * @param data 
 */
export function toLevel1Obj(data: Record<string, any>) {
    for (let key in data) {
        if (typeof data[key] === 'object') {
            data[key] = JSON.stringify(data[key]);
        }
    }
    return data;
}

使用

const totalList = // .. 一个对象数组
saveInExcel(totalList, './保存文件夹路径/', '文件名');

你可能感兴趣的:(javascript,爬虫,开发语言)