搜索网站并返回找到的结果

Searching a website and returning found results

使用 Excel Power 查询可以从提供 database/table 格式的网站中提取数据。

许多在线数据库都非常大,但它们实现了搜索功能,而不是显示整个数据库,这很好,但在尝试有效地查找许多关键字的信息时会造成障碍。

我要搜索的数据库是:

https://apps.who.int/food-additives-contaminants-jecfa-database/search.aspx

是否可以创建 keywords/CAS 个数字的列表并按顺序搜索数据库中的每个数字并找到 return 数据?这类似于网络抓取,但增加了预先实际搜索数据的步骤。

完全有可能实现你想要的。 首先,您分析页面,特别是输入框和提交按钮,并找到识别它们的内容。我为此使用 Chrome 开发工具。只需打开所需的页面并按 F12。

本例输入框为:

<input name="ctl00$ContentPlaceHolder1$txtSearch" type="text" id="ContentPlaceHolder1_txtSearch">

提交按钮是:

<input type="submit" name="ctl00$ContentPlaceHolder1$btnSearch" value="Search" id="ContentPlaceHolder1_btnSearch">

然后您可以使用这些 ids 来寻址带有 javascript 的框:

var inputBox = document.getElementById('ContentPlaceHolder1_txtSearch');
inputBox.value = 'your search string';

提交按钮的等效项:

var searchButton = document.getElementById('ContentPlaceHolder1_btnSearch');
searchButton.click(); // Start the search

交付结果后,您需要分析该页面以确定需要哪些 javascript 代码来提取该页面中您感兴趣的部分。或者您可以转储整个页面与:

document.documentElement.outerHTML;

Excel VBA 运行 javascript 的示例代码在此处的网页上:

https://github.com/peakpeak-github/libEdge

修改代码以满足您的需要。