Manual:Pywikibot/pagefromfile.py/ru
Wikimedia Git repository has this file: scripts/pagefromfile.py |
Скрипты Pywikibot |
---|
|
pagefromfile.py is a Pywikibot script used to upload pages to a wiki from a text file.
This bot takes its input from the UTF-8 text file that contains a number of pages to be put on the wiki. The pages should all have the same beginning and ending text (which may not overlap). The beginning and ending text is not uploaded with the page content by default.
A page name is by default taken from the first text block of the page content that is marked in bold (wrapped between ''' and ''').
If you expect the page title not to be present in the text or marked by different markers, use -titlestart
, -titleend
, and -notitle
parameters.
Specific arguments
Parameter | Description |
---|---|
-file:xxx |
The filename we are getting our material from, the default value is "dict.txt". Notice that if the source file name contains any space character, you should wrap it with double quotations (i.e. -file:"Page title" ). |
-begin:xxx |
The text that marks the beginning of a page, the default value is "{{-start-}}" |
-end:xxx |
The text that marks the end of the page, the default value is "{{-stop-}}" |
-include |
Include the beginning and end markers to the page |
-textonly |
Text is given without markers. Only one page text is given. -begin and -end options are ignored. |
-titlestart:xxx |
The text used in place of ''' for identifying the beginning of a page title |
-titleend:xxx |
The text used in place of ''' for identifying the end of the page title |
-notitle |
Do not include the page title, including titlestart and titleend, to the page. Can be used to specify unique page title above the page content |
-title:xxx |
The page title is given directly. Ignores -titlestart, -titleend and -notitle options |
-nocontent:xxx |
If the existing page contains specified statement, the page is skipped from editing |
-noredirect |
Do not upload on redirect pages |
-summary:xxx |
The text used as an edit summary for the upload. If the page exists, standard messages for prepending, appending, or replacement are appended after it |
-autosummary |
Use MediaWiki's autosummary when creating a new page, overrides -summary |
-minor |
Set the minor edit flag on page edits |
-showdiff |
Show difference between current page and page to upload, also forces the bot to ask for confirmation on every edit |
If the page to be uploaded already exists, it is skipped by default. But you can override this behavior if you want to:
Parameter | Description |
---|---|
-appendtop |
Add the text to the top of the existing page |
-appendbottom |
Add the text to the bottom of the existing page |
-force |
Overwrite the existing page |
It is possible to define a separator after the 'append' modes which is added between the existing and the new text.
For example a parameter -appendtop:foo
would add 'foo' between them.
A new line can be added between them by specifying '\n' as a value.
Примеры
Basic example
In the most basic form, pagefromfile takes a single text file with several wiki pages in it as input. For example, the contents could be:
{{-start-}}
'''Pywikibot''' is a Python library and collection of scripts that automate work on MediaWiki sites.
Originally designed for Wikipedia, it is now used throughout the Wikimedia Foundation's projects and on many other wikis.
{{-stop-}}
{{-start-}}
'''AutoWikiBrowser''' (often abbreviated '''AWB''') is a semi-automated MediaWiki editor designed to make tedious or repetitive editing tasks quicker and easier.
{{-stop-}}
Store this as a UTF-8 encoded text file, for example as 'pages.txt'.
You can then run python pwb.py pagefromfile -showdiff -file:pages.txt
.
This will let the bot create Pywikibot and AutoWikiBrowser -- the first '''bolded''' elements in both pages.
-showdiff
will give you the opportunity to review changes before they are being made.
Different page titles
Often, the first bolded element is not necessarily the correct page title. For example, we might want to place the article about AutoWikiBrowser on AWB instead. To do so, add a line in front of each article, with the correct page title between triple quotes (i.e., bolded):
{{-start-}}
'''Pywikibot'''
'''Pywikibot''' is a Python library and collection of scripts that automate work on MediaWiki sites.
Originally designed for Wikipedia, it is now used throughout the Wikimedia Foundation's projects and on many other wikis.
{{-stop-}}
{{-start-}}
'''AWB'''
'''AutoWikiBrowser''' (often abbreviated '''AWB''') is a semi-automated MediaWiki editor designed to make tedious or repetitive editing tasks quicker and easier.
{{-stop-}}
and add the -notitle
parameter to the call, i.e.: python pwb.py pagefromfile -showdiff -file:pages.txt -notitle
.
Доступные глобальные аргументы
Эта страница устарела. |
Эти параметры переопределяют настройки параметров в user-config.py .
Параметр | Описание | Конфигурационная переменная |
---|---|---|
-dir:PATH |
Прочитать настройки бота из каталога, заданному переменной PATH, а не из каталога по умолчанию. | |
-config:file |
The user config filename. Default is user-config.py. | user-config.py |
-lang:xx |
Установить язык Вики с которой вы хотите работать, перезаписывая конфигурацию из user-config.py. Вместо xx должен быть указан код языка (ru). | mylang |
-family:xyz |
Установите семейство Вики с которой вы хотите работать, например, Википедия, викисловарь, викисклад, викитрэвел, ... Переопределяет конфигурацию в user-config.py. | family |
-user:xyz |
Войдите в систему как пользователь 'xyz' вместо пользователя по умолчанию. | usernames |
-daemonize:xyz |
Немедленно возвращает управление терминалу и перенаправляет stdout и stderr в файл xyz (использовать только для ботов, которые не требуют ввода из stdin). | |
-help |
Показать справку. | |
-log |
Включить лог-файл, используя имя файла по умолчанию script_name-bot.log . Журналы будут храниться в подкаталоге logs. |
log |
-log:xyz |
Включить лог-файл, используя 'xyz' в качестве имени файла. | logfilename |
-nolog |
Отключить лог (если он включен по умолчанию). | |
-maxlag |
Устанавливает новый параметр - maxlag (число секунд). Отложить правки ботов в периоды лагов сервера базы данных. Значение по умолчанию устанавливается в config.py | maxlag |
-putthrottle:n -pt:n -put_throttle:n |
Указать минимальное время (в секундах) которое бот будет ждать после сохранения страниц. | put_throttle |
-debug:item -debug |
Включить лог-файл и включить расширенные отладочные данные для компонента "item(элемент)" (для всех компонентов, если используется последующая форма). | debug_log |
-verbose -v |
Выводить больше отладочной информации в консоль. | verbose_output |
-cosmeticchanges -cc |
Переключает настройки cosmetic_changes в config.py или user-config.py в противоположные или отменяет их. Все остальные параметры и ограничения остаются без изменений. | cosmetic_changes |
-simulate |
Запрещается запись на сервер. Полезно для тестирования и отладки нового кода (если эта опция указана, не делается каких-либо реальных изменений, а только показывается, что изменилось бы). | simulate |
-<config var>:n |
Вы можете использовать все заданные числовые настройки переменных как параметр и изменить его из командной строки. |