New user registration is currently disabled due to spam abuse / Регистрация новых пользователей в настоящее время приостановлена из-за злоупотреблений спаммерами

Онлайн словари - отображение только словарной статьи

Всё по словарям

Онлайн словари - отображение только словарной статьи

Postby gorilych » Wed Jun 01, 2011 2:34 pm

Всем привет.

Недавно придумал способ отображать только словарную статью (без рекламы, строки поиска и прочей чешуи) при переводе в GD, но столнулся с некоторыми проблемами.

==== Сначала описание метода (на примере для Fr-En-Fr словаря на http://www.wordreference.com):

Словарную статью отображаем через локальный html файл, то есть вместо

http://www.wordreference.com/fren/%GDWORD%

используем

file:///home/me/.goldendict/wordreference.com.fr-en-fr/wd.html?dir=fren&word=%GDWORD%

Результат виден на приложенном скриншоте
wr-local.png
Так выглядит словарная статья через локальный html-proxy
wr-local.png (77.81 KiB) Viewed 11341 times


Для сравнения также прикрепил, как оно отображается без обрезания
wr.png
Так выглядит словарная статья при подключении онлайн словаря напрямую
wr.png (70.95 KiB) Viewed 11341 times


Локальный файл wd.html работает как модифицирующий прокси: js скрипт с помощью ajax/yql (используется jquery, yql нужен для cross site scripting) подгружает содержимое страницы http://www.wordreference.com/fren/%GDWORD% и обрезает ненужные элементы. В браузере (ie/ff/chrome) - работает нормально, кроме wordreference.com ещё эксперементировал на multitran.ru.

Содержимое /home/me/.goldendict/wordreference.com.fr-en-fr прикрепил в архиве
wr.tgz
Содержимое /home/me/.goldendict/wordreference.com.fr-en-fr/
(36.13 KiB) Downloaded 525 times
. Для галочки: это только для ознакомления/личного пользования, контент wordreference.com скорее всего защищён АП. Стоит заметить, что владельцы сайты легко могут отрубить этот метод, если захотят - так что коммерческое использование вряд ли возможно, даже если вдруг окажется, что оно законно.

===== Теперь описание проблем.

Сразу оговорюсь, что ниже обсуждаемые проблемы проявляются только в окне GD, в браузерах проблем нет.

1. GD отображает статью через раз, то есть иногда вместо статьи - пустое место. Вероятно это связано с тем, что GD не дожидается отработки JS скрипта, который перерисовывает страницу. Приходится выключать/включать иконку словаря несколько раз.

2. Если статья отображается, то в её конец добавляется пустое место по размерам раза в 3-4 больше самой статьи, которое сдвигает словарные статьи из других словарей.

Поведение одинаковое в винде (сборку не помню) и линуксе (1.0.2~git20110314-1).

===== Чего хочу:

1. Помощи в решении проблем (я не програмист, сам скрипт наваял методом копипаста из различных источников) - поэтому самому искать проблему в недрах кода GD/Qt представляется плохим вариантом.

2. Советов в улучшении.

Спасибо.
gorilych
 
Posts: 3
Joined: Sat Jul 11, 2009 11:11 pm

Re: Онлайн словари - отображение только словарной статьи

Postby ikm » Sun Jun 05, 2011 8:06 am

GD сейчас делает так: для каждой статьи создает скрытый iframe, в котором они загружаются. После того как он получает от webkit событие loadFinished() для всего документа, он изменяет размер каждого фрейма на тот, который получает из QWebFrame::contentsSize().height() и показывает этот фрейм. Почему это работает не всегда - я не знаю. Возможно, некоторые страницы не загружаются полностью никогда (бывают, что они ждут там картиночку какую-нибудь вечно, или, возможно, что-нибудь подобное). Почему размер фрейма на деле может не соответствовать заявленному - тоже не знаю. В любом случае, код там несложный, и для некоторых вещей даже используется javascript, так что на исходники GD, мне кажется, смотреть вполне можно (конкретно описанное мною тут живет в articleview.cc:229).
ikm
Автор GoldenDict
 
Posts: 1595
Joined: Wed Feb 04, 2009 10:40 am

Re: Онлайн словари - отображение только словарной статьи

Postby Sorbing » Mon Nov 14, 2011 10:18 am

У меня такая проблема при добавлении источника перевода "Веб-сайт". Через браузер источник отрабатывает отлично, ни каких багов или задержек. А вот при добавлении его в GoldenDict переводит раз на пятый, а то и реже.
Не пойму в чем может быть проблема. Пол дня убил но проблему так и не решил, а мне очень нужно переводить предложения целиком, а не только слова.
Использовал Google Translate, через промежуточный скрипт парсер, т.к. платить за АПИ пока не вижу смысла, раз схема не работоспособна.
URL переводчика:
Code: Select all
http://sectorit.net/tools/google_translate/google_translate.php?text=%GDWORD%

Исходник на быструю руку, но мож кому пригодится.
Подскажите в какую сторону копать или альтернативные схемы решения вопроса: "Нужно переводить предложения в контексте".
Спасибо.
Sorbing
 
Posts: 1
Joined: Mon Nov 14, 2011 9:57 am

Re: Онлайн словари - отображение только словарной статьи

Postby nelf81 » Wed Dec 28, 2011 5:24 pm

hello dear

your post is really interesting but i don't understand anything about russian, can you explain me step by step how visualize wordreference site with the same format of goldendict ?
I have tried to put wr scripts in /home/me/.goldendict but without result.
i see always wordreference site with bar etc etc

thanks in advance

nellf81
nelf81
 
Posts: 1
Joined: Wed Dec 28, 2011 5:02 pm

Re: Онлайн словари - отображение только словарной статьи

Postby streletsky » Fri Apr 26, 2013 4:11 am

Sorbing wrote:У меня такая проблема при добавлении источника перевода "Веб-сайт". Через браузер источник отрабатывает отлично, ни каких багов или задержек. А вот при добавлении его в GoldenDict переводит раз на пятый, а то и реже.
Не пойму в чем может быть проблема. Пол дня убил но проблему так и не решил, а мне очень нужно переводить предложения целиком, а не только слова.
Использовал Google Translate, через промежуточный скрипт парсер, т.к. платить за АПИ пока не вижу смысла, раз схема не работоспособна.
URL переводчика:
Code: Select all
http://sectorit.net/tools/google_translate/google_translate.php?text=%GDWORD%

Исходник на быструю руку, но мож кому пригодится.
Подскажите в какую сторону копать или альтернативные схемы решения вопроса: "Нужно переводить предложения в контексте".
Спасибо.

Спасибо за идею... пока только работает если включен параллельно еще один онлайн словарь
streletsky
 
Posts: 1
Joined: Fri Apr 26, 2013 4:07 am


Return to Словари

Who is online

Users browsing this forum: No registered users and 2 guests