Как вы проверяете орфографию на сайте? - PullRequest
28 голосов
/ 25 февраля 2009

Я знаю, что проверки орфографии не идеальны, но они становятся более полезными по мере увеличения размера текста. Как я могу проверить орфографию сайта, на котором тысячи страниц?

Редактировать: из-за сложной обработки на стороне сервера, единственный способ получить страницы - через HTTP. Также он не может быть передан третьей стороне.

Изменить: у меня есть список всех URL-адресов на сайте, которые мне нужно проверить.

Ответы [ 11 ]

7 голосов
/ 25 февраля 2009

Похоже, что Lynx умеет получать только нужный мне текст (содержимое тела и альтернативный текст) и игнорировать то, что мне не нужно (встроенный Javascript и CSS).

lynx -dump http://www.example.com

В нем также перечислены все URL (преобразованные в их абсолютную форму) на странице, которые можно отфильтровать с помощью grep:

lynx -dump http://www.example.com | grep -v "http"

URL-адреса также могут быть локальными (file://), если я использовал wget для зеркалирования сайта.

Я напишу скрипт, который будет обрабатывать набор URL-адресов с использованием этого метода и выводить каждую страницу в отдельный текстовый файл. Затем я могу использовать существующее решение для проверки орфографии, чтобы проверить файлы (или один большой файл, объединяющий все маленькие).

Это будет игнорировать текст в заголовке и метаэлементах. Они могут быть проверены по отдельности.

3 голосов
/ 09 сентября 2009

Всего за несколько дней до того, как я обнаружил Проверка орфографии на веб-сайте Spello . Он использует мой NHunspell (Проверка орфографии открытого офиса для .NET) libaray. Вы можете попробовать.

2 голосов
/ 28 сентября 2010

Я очень рекомендую Inspyder InSite , это коммерческое программное обеспечение, но у него есть пробная версия, оно того стоит. Я использовал его в течение многих лет, чтобы проверить правильность написания клиентских сайтов. Он поддерживает автоматизацию / планирование и может интегрироваться с пользовательскими списками слов CMS. Это также хороший способ проверки ссылок и создания отчетов.

2 голосов
/ 25 февраля 2009

Если вы можете получить доступ к содержимому сайта в виде файлов, вы можете написать небольшой сценарий оболочки Unix, который выполняет эту работу. Следующий скрипт напечатает имя файла, номер строки и слова с ошибками. Качество вывода зависит от словаря вашей системы.

#!/bin/sh

# Find HTML files
find $1 -name \*.html -type f |
while read f
do
        # Split file into words
        sed '
# Remove CSS
/<style/,/<\/style/d
# Remove Javascript
/<script/,/<\/script/d
# Remove HTML tags
s/<[^>]*>//g
# Remove non-word characters
s/[^a-zA-Z]/ /g
# Split words into lines
s/[     ][      ]*/\
/g ' "$f" |
        # Remove blank lines
        sed '/^$/d' |
        # Sort the words
        sort -u |
        # Print words not in the dictionary
        comm -23 - /usr/share/dict/words >/tmp/spell.$$.out
        # See if errors were found
        if [ -s /tmp/spell.$$.out ]
        then
                # Print file, number, and matching words
                fgrep -Hno -f /tmp/spell.$$.out "$f"
        fi
done
# Remove temporary file
rm /tmp/spell.$$.out
1 голос
/ 25 февраля 2009

Если его один, и из-за количества страниц для проверки, возможно, стоит рассмотреть что-то вроде spellr.us, что было бы быстрым решением. Вы можете ввести URL своего сайта на главной странице, чтобы понять, как он будет сообщать об ошибках правописания.

http://spellr.us/

но я уверен, что есть несколько бесплатных альтернатив.

1 голос
/ 25 февраля 2009

Вы можете сделать это с помощью сценария оболочки, объединяющего wget с aspell. Вы имели в виду среду программирования?

Я бы лично использовал python с Beautiful Soup для извлечения текста из тегов и передачи текста через aspell.

0 голосов
/ 29 ноября 2014

@ Энтони Рой Я сделал именно то, что ты сделал. Пропустил страницу через Аспелл ​​через Пиенчанта. У меня есть словари английского языка (GB, CA, US) для использования на моем сайте https://www.validator.pro/. Свяжитесь со мной, и я назначу единовременную работу для вас, чтобы проверить 1000 страниц или более

0 голосов
/ 10 сентября 2013

Я сделал проверку правописания только для английского языка с Руби здесь: https://github.com/Vinietskyzilla/fuzzy-wookie

Попробуйте.

Его главный недостаток - отсутствие подробного словаря, включающего все формы каждого слова (множественное число, а не только единственное число; «имеет», а не просто «иметь»). Подстановка собственного словаря, если вы сможете найти или сделать его лучше, сделает его действительно потрясающим.


Помимо этого, я думаю, что самый простой способ проверки орфографии на одной веб-странице - это нажать ctrl + a (или cmd + a), чтобы выделить весь текст, затем скопировать и вставить его в многострочное текстовое поле на веб-странице. (Например, <html><head></head><body><textarea></textarea></body></html>.) Ваш браузер должен подчеркивать любые слова с ошибками.

0 голосов
/ 10 марта 2009

Вы можете проверить библиотеку, например, jspell.

0 голосов
/ 10 марта 2009

Мы используем элемент управления Telerik RAD Spell в наших приложениях ASP.NET.

Заклинание Telerik RAD

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...