首页 >web前端 >js教程 >维基百科学院奖列表的 JavaScript 抓取工具。

维基百科学院奖列表的 JavaScript 抓取工具。

Susan Sarandon
Susan Sarandon原创
2025-01-24 16:39:12984浏览

>本教程将使用JavaScript的Cheerio图书馆从Wikipedia中提取奖项奖的电影,并将其保存到CSV文件中。>

首先,安装所需的软件包:

<code class="language-bash">npm install cheerio axios</code>
wikipedia页面URL是:

<code class="language-javascript">const url = 'https://en.wikipedia.org/wiki/List_of_Academy_Award%E2%80%93winning_films';</code>
代码使用

获取页面的HTML,然后使用Cheerio来解析:> axios

脚本导航DOM,从表单元格中提取数据:>
<code class="language-javascript">const { data: html } = await axios.get(url);
const $ = cheerio.load(html);

const theadData = [];
const tableData = [];</code>

>最后,提取的数据是格式的,并使用

>将半olons保存到CSV文件中,将半olon作为定界符:>
<code class="language-javascript">$('tbody').each((i, column) => {
  const columnData = [];
  $(column).find('th').each((j, cell) => {
    columnData.push($(cell).text().replace('\n', ''));
  });
  theadData.push(columnData);
});

tableData.push(theadData[0]);

$('table tr').each((i, row) => {
  const rowData = [];
  $(row).find('td').each((j, cell) => {
    rowData.push($(cell).text().trim());
  });
  if (rowData.length) tableData.push(rowData);
});</code>

>使用:fs.writeFileSync运行脚本

<code class="language-javascript">const csvContent = tableData.map((row) => row.join(';')).join('\n');
fs.writeFileSync('academy_awards.csv', csvContent, 'utf-8');</code>
生成的

文件包含刮擦数据。

>
<code class="language-bash">node scraper.js</code>

academy_awards.csv

>本教程建立在使用GO和Python的先前刮擦教程的基础上。 如果有帮助,请考虑支持作者:

A JavaScript scraper for the Wikipedia Academy Award List.

以上是维基百科学院奖列表的 JavaScript 抓取工具。的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn