Автоматизировать добавление записей в вики

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

Процесс такой:

Got to appropriate page on the wiki

for each team member (DeveloperA, DeveloperB, DeveloperC)
{
    for each of two files ('*_current.jpg', '*_lastweek.jpg')
    {
        Select 'Attach' link on page
        Select the 'manage' link next to the file to be updated
        Click 'Browse' button
        Browse to the relevant file (which has the same name as the previous version)
        Click 'Upload file' button
    }
}

Не обязательно искать полное решение, так как я хотел бы попробовать его сам.

С чего начать? На каком языке я могу это сделать и насколько это будет сложно?

15.08.2008 16:09:37
3 ОТВЕТА

Если вы пишете на C #, классы WebClient могут стать хорошим началом. Могу поспорить, что люди могли бы дать более конкретный совет, если бы вы упомянули, какую платформу вики вы используете и требует ли она аутентификации.

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

Конечно, если вам повезет, у вашей вики будет достаточно простой бэкэнд, чтобы вы могли просто подключить их к своей базе данных напрямую. :)

1
15.08.2008 16:16:22

Может оказаться полезным CoScripter - это расширение Firefox, которое позволяет автоматизировать задачи, которые вы выполняете на веб-сайтах. Я не уверен, как вы интегрируете это со списком файлов, которые вы изменяете в локальной системе, но он, безусловно, может обрабатывать загрузку файлов через веб-форму.

Лучше сделать ставку, вероятно, использовать cURL или подобную библиотеку HTTP с вашим языком программирования. Если вы работаете с * nix, вы можете использовать программу командной строки cURL внутри своего сценария оболочки, чтобы сделать это довольно легко. (Как сказал @jsight, вам нужно проанализировать фактические формы, которые вы используете на веб-странице, используя Fiddler или просто просматривая элементы формы и заново создавая POST через cURL.)

1
15.08.2008 16:23:47

Проверьте, поддерживает ли вики, с которой вы хотите поговорить, XMLRPC , потому что если это так, то это будет несложно. Я написал инструмент под названием WikiUp для решения аналогичной проблемы (обновление выделенного раздела на вики-странице).

2
15.08.2008 17:19:41