Path of Exile Wiki:PyPoE

From Path of Exile Wiki
(Redirected from PyPoE)
Jump to navigation Jump to search

PyPoE is a Python 3 based collection of development tools to work with Path of Exile, originally developed by OmegaK2. The command line interface is used extensively to update many pages on the wiki with game data.

The Project Path of Exile Wiki fork of PyPoE is on github. Follow the instructions to install it.

Usage on the wiki

PyPoE is used on the wiki to help with exporting game data to the wiki to reduce the manual work load from editors.

There are generally no restrictions placed on who can use PyPoE, but please note that without bot or admin access regular users are subjects to some limits in regards to automated usage. It is possible however to simply write something to your local disk (using the --write option) and then manually apply it to the wiki.

The process of uploading images is generally manual; for PyPoE to be able to export uncompressed images see the instructions on the community portal.

After major game updates updates to the script may be required for it to work correctly. Issues can be reported on GitHub or on User:OmegaK2 if they are wiki-related.

Wiki exporter parameters

These are parameters that are supported on most commands.

Some parameters may not be available depending on the command, and some commands have have many additional parameters available. Please consult the command line help -h for details on specific parameter.

Parameter Arguments Description
-h N/A Shows the help message which includes a list of all possible parameters.
-p N/A Prints the output of the command to the console.
-wr N/A Writes the output of the command to the folder specified in the config.

File names will be named similarily to the wikipages, usually prefixed by the type of export (e.x. Imbued Wand would be called item_Imbued Wand.txt)

-d file path Overrides the config output directory and outputs to this one instead.
-w N/A Enables automatic exporting to the wiki.

This requires a complete installation of the CLI in particular including mwclient to access the wiki API.

-w-u username Name of the user account that will be used to authenticate when editing the wiki via PyPoE.
-w-p password Password of the user account that will be used to authenticate when editing the wiki via PyPoE.

Please note the password will be visible in the console. Bot passwords may be used instead of your account's main login credentials, although it is not required.

-w-dr N/A Peform a dry run without actually editing any pages. This is useful to check if manual changes on a page would be accounted for correctly or overriden.
-w-oe N/A Only edit existing pages and do not create any new ones.
-w-slp time in seconds Sleep inbetween editing request.

The wiki may rate limit you, if the default settings do not work for you, consider using a high value here.

-w-mt number of threads How many simultaneous threads to run. Avoid using.
--format <template|module> This can be used on some command to export a module string instead of a template. This can be used to write to a file to get module strings for module debugging purposes.
-im N/A Allows the extraction of related images on some commands
-im-c N/A Converts the extracted image from DDS to PNG format. This requires process-image to be available from the command line.

Wiki export commands


Command Description English
pypoe_exporter wiki items item Base items (normal items)
pypoe_exporter wiki items prophecy Prophecies
pypoe_exporter wiki items maps For the 5th map series (Betrayal and newer). For older series base item export is used.

DOES NOT include unique maps

pypoe_exporter wiki items atlas_icons Special icons for the interactive atlas.

Pages in data name spaces (monsters, mods, areas, passives)

Command Description
pypoe_exporter wiki area Exports the area data
pypoe_exporter wiki mods Exports the modifier data
pypoe_exporter wiki monster Exports monster data (experimental)
pypoe_exporter wiki passive Exports passive skill data
pypoe_exporter wiki skill Exports skill data

Please note exports of non-player skills are unsupported and will result in errors. This export only needs to be run for mods related skills, not skill gems (skill gems will populate their skill data automatically).

Generic data dumps for lua modules (quest/vendor rewards, atlas, blight, delve, etc)

Due to the nature of using lua and cargo on mediawiki, these particular changes will not be loaded without null-editing. Please see the corresponding templates for details on which template to null-edit for changes to go through.

Generally the data is stored in Template:Name/cargo/table_name/N where Name is the name of Template usually after whatever it is doing, table_name is the name of the database table, and N is one for each every 1000 entries.

Please note that some module pages might require admin privileges to edit to prevent vandalism.

Command Description
pypoe_exporter wiki lua atlas Exports data for the current atlas of worlds layout Template:Atlas
pypoe_exporter wiki lua bestiary Exports data related to bestiary crafting Template:Bestiary
pypoe_exporter wiki lua crafting_bench Exports crafting bench data such as recipes and unlocks Template:Crafting bench
pypoe_exporter wiki lua delve Exports delve data such as depth scaling, sulfite costs and delving upgrades Template:Delve
pypoe_exporter wiki lua monster Exports shared monster data such as the level progression, scaling for magic/rare monsters, map scaling info, monster types and resistances data, etc. Template:Monster
pypoe_exporter wiki lua pantheon Exports pantheon data Template:Pantheon
pypoe_exporter wiki lua ot Exports base statistics for monsters and player characters Template:Generic stats

Support in other language wikis

PyPoE can work in other language wikis since it uses the appropriate game files for other languages, however there a number of original work and custom strings that need to be translated. This needs to be supported directly in the code, I'd recommend setting pull-requests or translations for the relevant portions so they can be added.

Currently Russian (provided by User:Ruba159753‎) and German is available.

The following files need strings for the specified variables:

  • PyPoE/_data/custom_descriptions.txt
  • PyPoE/cli/wiki/
    • _inter_wiki_map
  • PyPoE/cli/wiki/parsers/
    • _ITEM_MAP
  • PyPoE/cli/wiki/parsers/
    • _conflict_resolver_prophecy_map
    • _LANG
  • PyPoE/cli/wiki/parsers/
    • _LANG
  • PyPoE/cli/wiki/parsers/
    • _incursion_room_page_name

External links

ru:Path of Exile Wiki:PyPoE