我是编程(Java)新手,但我有一个想法。狗就是一个例子,如下所示:
搜索“最可爱的狗”
点击第一个链接。
在网站上搜索关键字,例如“Terrier”或“Bulldog”(会有更多,例如 2,000 多个)
点击第二个链接。
在网站中搜索关键字。
它对一些 Google 页面执行此操作。
编制一个包含每个关键字出现频率的列表,例如
Terrier-219 比赛
Bulldog-183 比赛
等等。
我将如何着手这个问题,我需要用什么语言来编写它,以及这对我来说有多困难(如前所述,初学者)?
最佳答案
使用Python,您可以使用库requests轻松下载 HTML 网页的内容,然后使用正则表达式或字符串搜索功能(例如 str.count
方法)来查找关键字。我认为设置起来相当简单,一些示例代码是:
import requests
html = requests.get(url).content
html.count('Terrier')
该示例将为您提供代码,用于计算字符串“Terrier”出现在由您传递给函数的 url
指定的网页中的次数。您还可以使用 requests 库来抓取 this 的内容谷歌搜索“最可爱的狗”的结果网页,然后拉出您想要关注和搜索的每个链接。要查找网页的链接,您可以使用类似 BeautifulSoup 的库。找到页面上的链接,然后跟踪它们的 URL。查找链接的示例可能类似于:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html) # where html is the result of downloading the html for a webpage, similar to the code above
links = soup.find_all('a')
要创建频率表,您可以使用 Python dict
type 来存储一个表,其中键是搜索字符串,值是频率。以下是增加特定字符串的频率计数的示例
frequencies = {'Terrier': 0}
frequencies['Terrier'] += html.count('Terrier)
关于javascript - 网络关键词搜索和计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61737228/