You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.js 1.4 kB

4 years ago
4 years ago
4 years ago
4 years ago
123456789101112131415161718192021222324252627
  1. import { basename } from "https://deno.land/std/path/mod.ts";
  2. const regions = [
  3. {path: 'pad', regionID: 'JA', baseJsonURL: 'https://dl.padsv.gungho.jp/base_adr.json'},
  4. {path: 'padEN', regionID: 'NA', baseJsonURL: 'https://dl-na.padsv.gungho.jp/base-na-adr.json'},
  5. {path: 'padKO', regionID: 'KO', baseJsonURL: 'https://dl-kr.padsv.gungho.jp/base.kr-adr.json'},
  6. // {path: 'padHT', regionID: 'HT', baseJsonURL: 'https://dl.padsv.gungho.jp/base.ht-adr.json'},
  7. ];
  8. async function downloadFile(url, path) {
  9. const response = await fetch(url);
  10. const headers = response.headers;
  11. //console.log(headers);
  12. const body = new Uint8Array(await response.clone().arrayBuffer());
  13. Deno.writeFileSync(`${path}/${basename(response.url)}`, body);
  14. const fileData = new Date(headers.get("date")); //获取修改时间
  15. Deno.utimeSync(`${path}/${basename(response.url)}`, fileData, fileData);
  16. return response;
  17. }
  18. for (const region of regions) {
  19. Deno.mkdirSync(`${region.path}`, { recursive: true });
  20. const baseUrl = region.baseJsonURL;
  21. console.log(`正在下载 ${baseUrl}`);
  22. const baseResponse = await downloadFile(baseUrl, region.path);
  23. const baseJsonData = await baseResponse.json();
  24. const extlistUrl = `${baseJsonData.extlist}/extlist.bin`;
  25. console.log(`正在下载 ${extlistUrl}`);
  26. const extlistResponse = await downloadFile(extlistUrl, region.path);
  27. }

智龙迷城队伍图制作工具