PyPoE is a python 3 based collection of development tools to work with Path of Exile developed by User:OmegaK2. The command line interface for the wiki is used extensively to update many pages on the wiki with game data.
It is currently in a development alpha, which means it is neither feature complete nor well-tested and subject to frequent changes.
Overview[]
PyPoE can be downloaded from github. Follow the instructions to install it.
More detailed instructions can be found in the documentation; a live version of the documentation resides here.
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 Path_of_Exile_Wiki:Community_portal#Uncompressed_DDS_files_from_the_ggpk_for_the_wiki 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 |
-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 | User name to use when performing edits on the wiki. To do this on gamepedia Special:BotPasswords must be used.
The user name, after being set will be something like |
-w-p | password | The password used in combination with the user to perform edits on the wiki. This is NOT your login password, but rather the one set via Special:BotPasswords
Please note the password will be visible in the console. |
-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 an imagemagick installation to be available in the commandline. |
Wiki export commands[]
Items[]
Command | Description | English Wiki only |
---|---|---|
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/parser.py
- _inter_wiki_map
- _HIDDEN_FORMAT
- PyPoE/cli/wiki/parsers/lua.py
- _ITEM_MAP
- _TWO_STONE_MAP
- PyPoE/cli/wiki/parsers/item.py
- _conflict_resolver_prophecy_map
- _NAME_OVERRIDE_BY_ID
- _LANG
- PyPoE/cli/wiki/parsers/area.py
- _LANG
- PyPoE/cli/wiki/parsers/incursion.py
- _incursion_room_page_name