Manual:Pywikibot/PAWS/uk


 * Див. PAWS для докладнішої інформації.

Цей документ надає швидкий інтерактивний огляд  із використанням notebook, який розташований у середовищі лабораторій Вікімедіа та використовує PAWS (PAWS: A Web Shell).

Створення облікового запису Вікімедіа
Для дотримання цього проходження Вам потрібний лише обліковий запис Вікіпедії чи Вікімедіа. Використовуйте Special:CreateAccount для створення такого.

Щойно Ви створили обліковий запис, будь ласка, відвідайте https://test.wikipedia.org/ та перевірте, що Ваше ім'я користувача з'явилося у верхньому правому кутку (це працює навколо T120327).

Вхід до записника
Для запуску розміщеного записника ідіть до https://paws.wmflabs.org

Натисніть «Увійти за допомогою МедіаВікі», а потім «Дозволяю», коли попросять схвалити «Використовувати OAuth для автентифікації». Під час першого доступу до PAWS Вам необхідно створити сервер. Натисніть зелену кнопку «Запустити мій Сервер». Нормально почекати кілька хвилин, поки новий сервер запуститься.

Щойно це завершиться, Вас буде переспрямовано до URL на кшталт https://paws.wmflabs.org/paws/user/ /tree

Запуск терміналу
Для запуску нового інтерактивного терміналу,
 * 1) Ідіть до свого дому PAWS
 * 2) натисніть «Новий» праворуч, і
 * 3) виберіть «Термінал».

Це відкриє нове вікно з URL https://paws.wmflabs.org/paws/user/ /terminals/1 та запитом Linux «$».

Ви можете зберегти в закладки цей URL і повернутися до терміналу будь-коли, навіть після закриття Вашого браузера чи завершення роботи комп'ютера.

Цей термінал не є емулятором. Це справжня оболонка bash як частина справжньої інсталяції Linux, яка сидить на докерному контейнері, то ж Ви можете використовувати будь-яку команду bash і використовувати будь-які команди, доступні на Linux, які було встановлено.

Щоб побачити деякі доступні команди, використовуйте.

Вхід до Вікіпедії
Це встановить Ваш обліковий запис на сервері та дозволить Вам входити з командного рядка. Наступна команда повинна підтвердити, що Ви входите до тестової Вікіпедії. Вона використовує OAuth, то ж немає необхідності вводити пароль.

Ви можете під'єднати pywikibot до різних Вікіпедій шляхом створення файлу під назвою user-config.py у своїй папці   та додавання змінних mylang і family:

Create a page
To create a page, enter the following command in the terminal, replacing ' ' with your username, and pressing 'Y' when prompted to accept your changes:

You have edited the wiki. View your changes by opening https://test.wikipedia.org/wiki/User_talk: in your web browser.

You can read more about each of these command line scripts with the '-help' command line option.

Fetch a page
Fetching many pages is achieved with the "listpages" command.

To get the contents of the page you created in the previous section, enter the following command:

Now if you go to your PAWS files list, the saved page should be present.

A real script example
When a website used on Wikipedia changes its URL, the links on Wikipedia become outdated, and possible also dead links if the website doesn't redirect from the old URLs to the new URLs. e.g. for example, Encyclopedia Britannica (EB) has changed their links, such as moving pages from http://www.britannica.com/EBchecked/media/ to http://www.britannica.com/topic/[topic name]/images-videos/*. You can find the list of usages of the old URL on English Wikipedia at https://en.wikipedia.org/wiki/Special:LinkSearch/http://www.britannica.com/EBchecked/media. Updating all those links manually will be very time consuming. Thankfully EB has maintained redirects from their old URLs to the new URLs, so this does not need to be fixed immediately.

For a simpler example, English Wikipedia currently contains links to http://britannica.com/EBchecked/ instead of http://www.britannica.com/EBchecked/ ; i.e. a 'www.' subdomain is missing in the URL.

There are currently 14 cases on English Wikipedia: https://en.wikipedia.org/wiki/Special:LinkSearch/http://britannica.com/EBchecked/

Wikipedia in other language also have this problem. e.g. there is one case on German Wikipedia: https://de.wikipedia.org/wiki/Spezial:Weblinksuche/http://britannica.com/EBchecked/

In order to fix those links, we can use Pywikibot replace.py script. In this demo we will use the '-simulate' argument to avoid writing to the wiki, as there are strict rules about automated editing of English Wikipedia.

First lets list all of the pages which link to http://britannica.com/EBchecked/.

Now we check those pages actually have the literal URL in the page; i.e. they are not using a template.

Now use replace to add the missing "www."

In PAWS, and any terminal that supports color, the diff of changes will show the added "www." in green text color, making it easier to find the proposed changes.

Inside Pywikibot
Next we will use the PAWS Python session.


 * 1) Go to your PAWS home,
 * 2) click 'New' on the right hand side, and
 * 3) select 'Python 3'.

This will open a new window.

In the text box, enter the following and in the Cell menu select 'Run' (or pressing shift+enter to run).

A new text box will appear below. Run the following to create an APISite object connected to https://test.wikipedia.org/:

Describe "site" by entering it into the new text box and selecting "Run".

It should show

Out[3]: APISite("test", "wikipedia")

Create a page object:

Check it exists by running:

It should output

VERBOSE:pywiki:Found 1 wikipedia:test processes running, including this one. Out[5]: True

Show the text on the page:

Change the page text in the object:

Save the page to the wiki:

The response should be:

The interactive Python 3 notebook allows many lines to be run together. The above could be put into one text box and Run

The log of your interactive Python session can be saved or downloaded for future reference.

Accessing online documentation in PAWS
Pywikibot documentation may be found at https://doc.wikimedia.org/pywikibot/. It is primarily sourced from docstrings, which can be loaded in the interactive Python 3 notebook using the Python built-in function help.

For example, to look at the arguments for the save method above, run either:

or

Editing Pywikibot scripts
The Pywikibot library and scripts are located in /srv/paws, and are read-only. The installed Pywikibot library can not be modified in PAWS.

Scripts may be modified after copying them into your PAWS home.

For example, to run a modified "checkimages.py":
 * 1) In the terminal, enter
 * 2) In a browser, go to your PAWS home and click on the file.
 * 3) In the browser, you can edit the file. Edit the code -- for instance, just after the   code on line 1775, add a new line 1776 that will print out your name:
 * 4) In the editing interface, use the File menu and click Save to save your modifications.
 * 5) In the terminal, enter