Существует ли команда CLI для подсчета случаев определенной строки на веб-странице?

Я хочу найти количество раз, веб-страница использовала определенное слово или фразу неоднократно в течение последних нескольких лет; и я хотел бы сделать эту страницу результатов archive.org использования как источник страницы со временем.

Я вполне уверен, что существует инструмент некоторого вида, который может сделать поиск слова веб-страницы, и я знаю, что archive.org имеет все легко доступные страницы...

но это - насколько я добираюсь. Я довольно владею мастерством некоторых быстрых-и-грязных сценариев удара и небольшого Python также, но у меня нет опыта с прямым доступом к сети. Интернет.Без разницы. (См. уровень моего незнания?!)

Я предполагаю то, что я хочу знать: Каков был бы хороший инструмент CLI для подсчета слова какой-либо URL, который передается ему, и как я пошел бы о записи сценария, который мог возвратить URL ~750 последовательно датированных страниц? Или - который даже возможен?

Я уверен, что существует кто-то, который мог клудж это вместе за несколько секунд, а не кормить меня с ложечки с тремя абзацами, "как к" руководству, таким образом, я могу сделать это время, но я все еще, по крайней мере, хотел бы видеть, как это будет сделано.

archive.org имеет, несколько сохраняют в день и не всегда то же число. Таким образом, я хотел бы знать, существует ли способ опросить страницу 'результатов', следовать за каждым URL и проверить дату создания и сохранить каждый URL, который возвращает новую дату в некоторый текстовый файл. Это позволило бы моему создавать список последовательно датированных веб-страниц для шага 2...

Если такой инструмент существует, который может искать URL, сделать grep (или подобный) для некоторого текста b и возвратить количество b, что это находит, выполняет это и передает вывод по каналу к текстовому файлу. Я использую несколько cli инструментов, которые могут сделать такую гимнастику на локальном диске, но я надеялся, что будет программа, которая могла просто сделать:

для xurl в somefile.txt; сделайте wordcount-a= $xurl-b = "searchstring">> temp.txt;готово

0
задан 20 October 2017 в 08:48

2 ответа

можно завихриться URL и передать его по каналу к grep как это

curl --silent https://www.google.cl | grep -c -i google

, Также отмечают эти -i, это - поиск без учета регистра.

, Чтобы сделать это в пакете из файла (one-url-per-line)

wordToSearch='google'
#
while read url; do
    curl --silent "${url}" | grep -c -i "${wordToSearch}" >> temp.txt
done < fileWithUrl.txt
1
ответ дан 2 November 2019 в 02:22

Я не вижу то, на что вход к Вашей программе или странице “результатов”, которую Вы упоминаете, был бы похож, но здесь - как я попытался бы решить это:

curl позволяет Вам загружать исходный код веб-страницы. Так curl archive.org/whatever получает Вас страница результатов в простом тексте.

Можно передать это по каналу в grep и поиск тегов привязки HTML (<a href="location.of/the-linked-page">a description of the link</a>). Вот grep вызов, который может служить начальной точкой: | grep -o '<a href.*</a> (-o печать только подобранные части строки. Вы, возможно, должны были бы заменить пространство между a и href с space класс или эксперимент с нежадными формами *, В зависимости от Вашего входа.) Вы также получите все ссылки на той странице, таким образом, другой (или несколько) раунд (раунды) захвата будет необходим для удаления навигационных ссылок, рекламы, и т.д.

Впоследствии, использование sed, Вы удаляете “помеху” как <a>, href, и т.д. получать только чистую ссылку. Можно затем подать вывод в для цикла, который снова использует завихрение для retieve содержание этих ссылок. На том выводе, наконец, можно выполнить аналитическое использование слова grep -c, как vidarlo упоминания.

1
ответ дан 2 November 2019 в 02:22

Другие вопросы по тегам:

Похожие вопросы: