diff options
Diffstat (limited to 'ffxiv/lodestone-css-selectors-0.52.0')
27 files changed, 2611 insertions, 0 deletions
diff --git a/ffxiv/lodestone-css-selectors-0.52.0/LICENSE b/ffxiv/lodestone-css-selectors-0.52.0/LICENSE new file mode 100644 index 0000000..fdddb29 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/LICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <https://unlicense.org> diff --git a/ffxiv/lodestone-css-selectors-0.52.0/README.md b/ffxiv/lodestone-css-selectors-0.52.0/README.md new file mode 100644 index 0000000..da1fd4b --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/README.md @@ -0,0 +1,26 @@ +# lodestone-css-selectors +CSS selectors for The Lodestone. These selectors are all made for non-browser clients; they may break in various browsers +due to DOM elements being injected by the browser itself. Please test them in a parser before reporting any errors. + +## Character Profile +Do note that in Firefox, some page elements are slightly different from in other browsers. Use no user agent or try the provided ones in `meta.json`. + +### Character info (`profile/character.json`) +Basic character data is on the main profile page. + +### Attributes (`profile/attributes.json`) +Attribute data is on the main profile page. + +### Gearset (`profile/gearset.json`) +Gearset data is on the main profile page. + +### Classjobs (`profile/classjob.json`) +Classjob data is on the `/class_job` endpoint. + +### Mounts/Minions (`profile/minion.json` and `profile/mount.json`) +Mount and minion data are on their own `/mount` and `/minion` endpoints, and need to be scraped using a mobile user agent. With a desktop UA, the mount/minion names are +injected into the page with AJAX, and separate requests need to be made to get every single one. + +### Achievements (`profile/achievements.json`) +Achievements are on the `/achievement` endpoint. Use the list selector to get the list of achievements on the page, and then get their IDs from the `href` attribute +of the link. Use the next button's selector to request the next page and scrape the next set of achievements until the href is `javascript:void(0);`. diff --git a/ffxiv/lodestone-css-selectors-0.52.0/cwls/cwls.json b/ffxiv/lodestone-css-selectors-0.52.0/cwls/cwls.json new file mode 100644 index 0000000..4c4b007 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/cwls/cwls.json @@ -0,0 +1,9 @@ +{ + "NAME": { + "selector": ".heading__linkshell__name", + "regex": "\\s*(?P<Name>\\S*)" + }, + "DC": { + "selector": ".heading__cwls__dcname" + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/cwls/members.json b/ffxiv/lodestone-css-selectors-0.52.0/cwls/members.json new file mode 100644 index 0000000..05e7e41 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/cwls/members.json @@ -0,0 +1,51 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "AVATAR": { + "selector": ".entry__chara__face img", + "attribute": "src" + }, + "ID": { + "selector": ".entry__link", + "attribute": "href", + "regex": "/lodestone/character/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "RANK": { + "selector": ".entry__chara_info > .js__tooltip", + "attribute": "data-tooltip", + "regex": "/ (?P<RankName>.+)" + }, + "RANK_ICON": { + "selector": ".entry__chara_info > .js__tooltip > img", + "attribute": "src" + }, + "LINKSHELL_RANK": { + "selector": ".entry__chara_info__linkshell > span" + }, + "LINKSHELL_RANK_ICON": { + "selector": ".entry__chara_info__linkshell > img", + "attribute": "src" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(5) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager:nth-child(5) > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/freecompany/focus.json b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/focus.json new file mode 100644 index 0000000..44850be --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/focus.json @@ -0,0 +1,131 @@ +{ + "NOT_SPECIFIED": { + "selector": "p.freecompany__text:nth-child(7)" + }, + "RP": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(1) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(1) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(1)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "LEVELING": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(2) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(3) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(3)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "CASUAL": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(3) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(3) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(3)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "HARDCORE": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(4) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(4) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(4)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "DUNGEONS": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(5) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(5) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(5)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "GUILDHESTS": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(6) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(6) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(6)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "TRIALS": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(7) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(7) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(7)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "RAIDS": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(8) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(8) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(8)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + }, + "PVP": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(9) > p:nth-child(2)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(9) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(7) > li:nth-child(9)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/freecompany/freecompany.json b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/freecompany.json new file mode 100644 index 0000000..63cc831 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/freecompany.json @@ -0,0 +1,80 @@ +{ + "ACTIVE_STATE": { + "selector": "p.freecompany__text:nth-child(3)", + "regex": "\\s*(?P<ActiveState>\\S+\\s?\\S*)" + }, + "ACTIVE_MEMBER_COUNT": { + "selector": "p.freecompany__text:nth-child(12)" + }, + "CREST_LAYERS": { + "BOTTOM": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > img:nth-child(2)", + "attribute": "src" + }, + "TOP": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > img:nth-child(3)", + "attribute": "src" + } + }, + "ESTATE": { + "NO_ESTATE": { + "selector": ".freecompany__estate__none" + }, + "GREETING": { + "selector": ".freecompany__estate__greeting" + }, + "NAME": { + "selector": ".freecompany__estate__name" + }, + "PLOT": { + "selector": ".freecompany__estate__text" + } + }, + "FORMED": { + "selector": "p.freecompany__text:nth-child(10) > script", + "regex": ".*ldst_strftime\\((?P<Timestamp>\\d*)" + }, + "GRAND_COMPANY": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1) > div:nth-child(2) > p:nth-child(1)", + "regex": "(?P<Name>\\w.*)<(?P<Rank>\\w*)>" + }, + "ID": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1)", + "attribute": "href", + "regex": "/lodestone/freecompany/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".freecompany__text__name" + }, + "RANK": { + "selector": "p.freecompany__text:nth-child(14)" + }, + "RANKING": { + "WEEKLY": { + "selector": ".character__ranking__data tr:nth-child(1) > th:nth-child(1)", + "regex": "Weekly Rank:(?P<Rank>.+) \\(previous week\\)" + }, + "MONTHLY": { + "selector": ".character__ranking__data tr:nth-child(2) > th:nth-child(1)", + "regex": "Monthly Rank:(?P<Rank>.*) \\(previous month\\)" + } + }, + "RECRUITMENT": { + "selector": "p.freecompany__text:nth-child(5)", + "regex": "\\s*(?P<ActiveState>\\S*)" + }, + "SERVER": { + "selector": "div.ldst__window:nth-child(1) > div:nth-child(2) > a:nth-child(1) > div:nth-child(2) > p:nth-child(3)", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + }, + "SLOGAN": { + "selector": ".freecompany__text__message" + }, + "TAG": { + "selector": ".freecompany__text.freecompany__text__tag" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/freecompany/members.json b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/members.json new file mode 100644 index 0000000..aa7c897 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/members.json @@ -0,0 +1,51 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "li.entry", + "multiple": true + }, + "AVATAR": { + "selector": ".entry__chara__face > img", + "attribute": "src" + }, + "ID": { + "selector": ".entry__bg", + "attribute": "href", + "regex": "/lodestone/character/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "FC_RANK": { + "selector": ".entry__freecompany__info > li:nth-child(1) > span" + }, + "FC_RANK_ICON": { + "selector": ".entry__freecompany__info > li:nth-child(1) > img", + "attribute": "src" + }, + "RANK": { + "selector": ".entry__freecompany__info > .js__tooltip", + "attribute": "data-tooltip", + "regex": "/ (?P<RankName>.+)" + }, + "RANK_ICON": { + "selector": ".entry__freecompany__info > .js__tooltip > img", + "attribute": "src" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(4) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager:nth-child(4) > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/freecompany/reputation.json b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/reputation.json new file mode 100644 index 0000000..c88df40 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/reputation.json @@ -0,0 +1,41 @@ +{ + "MAELSTROM": { + "NAME": { + "selector": "div.freecompany__reputation:nth-child(16) > div:nth-child(2) > p:nth-child(1)" + }, + "PROGRESS": { + "selector": "div.freecompany__reputation:nth-child(16) > div:nth-child(2) > div:nth-child(3) > div:nth-child(1)", + "attribute": "style", + "regex": "width:(?P<Progress>\\d+)%;" + }, + "RANK": { + "selector": "div.freecompany__reputation:nth-child(16) > div:nth-child(2) > p:nth-child(2)" + } + }, + "ADDERS": { + "NAME": { + "selector": "div.freecompany__reputation:nth-child(17) > div:nth-child(2) > p:nth-child(1)" + }, + "PROGRESS": { + "selector": "div.freecompany__reputation:nth-child(17) > div:nth-child(2) > div:nth-child(3) > div:nth-child(1)", + "attribute": "style", + "regex": "width:(?P<Progress>\\d+)%;" + }, + "RANK": { + "selector": "div.freecompany__reputation:nth-child(17) > div:nth-child(2) > p:nth-child(2)" + } + }, + "FLAMES": { + "NAME": { + "selector": "div.freecompany__reputation:nth-child(18) > div:nth-child(2) > p:nth-child(1)" + }, + "PROGRESS": { + "selector": "div.freecompany__reputation:nth-child(18) > div:nth-child(2) > div:nth-child(3) > div:nth-child(1)", + "attribute": "style", + "regex": "width:(?P<Progress>\\d+)%;" + }, + "RANK": { + "selector": "div.freecompany__reputation:nth-child(18) > div:nth-child(2) > p:nth-child(2)" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/freecompany/seeking.json b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/seeking.json new file mode 100644 index 0000000..164c01a --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/freecompany/seeking.json @@ -0,0 +1,75 @@ +{ + "NOT_SPECIFIED": { + "selector": "p.parts__text:nth-child(9)" + }, + "TANK": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(1) > p:nth-child(2)" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(1)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(1) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + } + }, + "HEALER": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(2) > p:nth-child(2)" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(2)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(2) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + } + }, + "DPS": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(3) > p:nth-child(2)" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(3)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(3) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + } + }, + "CRAFTER": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(4) > p:nth-child(2)" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(4)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(4) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + } + }, + "GATHERER": { + "NAME": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(5) > p:nth-child(2)" + }, + "STATUS": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(5)", + "attribute": "class", + "regex": "freecompany__focus_icon--(?P<Status>off)" + }, + "ICON": { + "selector": "ul.freecompany__focus_icon:nth-child(9) > li:nth-child(5) > div:nth-child(1) > img:nth-child(1)", + "attribute": "src" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/linkshell/ls.json b/ffxiv/lodestone-css-selectors-0.52.0/linkshell/ls.json new file mode 100644 index 0000000..c33ccb5 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/linkshell/ls.json @@ -0,0 +1,5 @@ +{ + "NAME": { + "selector": ".heading__linkshell__name" + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/linkshell/members.json b/ffxiv/lodestone-css-selectors-0.52.0/linkshell/members.json new file mode 100644 index 0000000..05e7e41 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/linkshell/members.json @@ -0,0 +1,51 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "AVATAR": { + "selector": ".entry__chara__face img", + "attribute": "src" + }, + "ID": { + "selector": ".entry__link", + "attribute": "href", + "regex": "/lodestone/character/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "RANK": { + "selector": ".entry__chara_info > .js__tooltip", + "attribute": "data-tooltip", + "regex": "/ (?P<RankName>.+)" + }, + "RANK_ICON": { + "selector": ".entry__chara_info > .js__tooltip > img", + "attribute": "src" + }, + "LINKSHELL_RANK": { + "selector": ".entry__chara_info__linkshell > span" + }, + "LINKSHELL_RANK_ICON": { + "selector": ".entry__chara_info__linkshell > img", + "attribute": "src" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(5) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager:nth-child(5) > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/meta.json b/ffxiv/lodestone-css-selectors-0.52.0/meta.json new file mode 100644 index 0000000..4b40bd8 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/meta.json @@ -0,0 +1,35 @@ +{ + "version": "0.45.0", + "userAgentDesktop": "curl/7.73.0", + "userAgentMobile": "Mozilla/5.0 (iPhone; CPU OS 10_15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1.1 Mobile/14E304 Safari/605.1.15", + "applicableUris": { + "freecompany/focus.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/%s/", + "freecompany/freecompany.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/%s/", + "freecompany/members.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/%s/member/", + "freecompany/reputation.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/%s/", + "freecompany/seeking.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/%s/", + + "cwls/cwls.json": "https://%s.finalfantasyxiv.com/lodestone/crossworld_linkshell/%s/", + "cwls/members.json": "https://%s.finalfantasyxiv.com/lodestone/crossworld_linkshell/%s/", + + "linkshell/ls.json": "https://%s.finalfantasyxiv.com/lodestone/linkshell/%s/", + "linkshell/members.json": "https://%s.finalfantasyxiv.com/lodestone/linkshell/%s/", + + "profile/achievements.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/achievement/", + "profile/attributes.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/", + "profile/character.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/", + "profile/classjob.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/class_job/", + "profile/gearset.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/", + "profile/minion.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/minion/", + "profile/mount.json": "https://%s.finalfantasyxiv.com/lodestone/character/%d/mount/", + + "pvpteam/members.json": "https://%s.finalfantasyxiv.com/lodestone/pvpteam/%s/", + "pvpteam/pvpteam.json": "https://%s.finalfantasyxiv.com/lodestone/pvpteam/%s/", + + "search/character.json": "https://%s.finalfantasyxiv.com/lodestone/character/", + "search/cwls.json": "https://%s.finalfantasyxiv.com/lodestone/crossworld_linkshell/", + "search/freecompany.json": "https://%s.finalfantasyxiv.com/lodestone/freecompany/", + "search/linkshell.json": "https://%s.finalfantasyxiv.com/lodestone/linkshell/", + "search/pvpteam.json": "https://%s.finalfantasyxiv.com/lodestone/pvpteam/" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/achievements.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/achievements.json new file mode 100644 index 0000000..5db2e02 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/achievements.json @@ -0,0 +1,45 @@ +{ + "ROOT": { + "selector": ".ldst__achievement" + }, + "ENTRY": { + "ROOT": { + "selector": ".entry", + "multiple": true + }, + "NAME": { + "selector": ".entry__activity__txt", + "regex": "(?P<NameEU>.*)" + }, + "ID": { + "selector": ".entry__achievement", + "attribute": "href", + "regex": "/lodestone/character/\\d*/achievement/detail/(?P<ID>\\d*)/" + }, + "TIME": { + "selector": ".entry__activity__time > script", + "regex": ".*ldst_strftime\\((?P<Timestamp>\\d*)" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(2) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager:nth-child(2) > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + }, + "TOTAL_ACHIEVEMENTS": { + "selector": ".parts__total", + "regex": "(?P<TotalAchievements>[0-9]*) \\D+" + }, + "ACHIEVEMENT_POINTS": { + "selector": ".achievement__point" + }, + "ACTIVITY_DESCRIPTION": { + "selector": ".entry__activity__txt" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/attributes.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/attributes.json new file mode 100644 index 0000000..c031c20 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/attributes.json @@ -0,0 +1,62 @@ +{ + "STRENGTH": { + "selector": "table.character__param__list:nth-child(2) tr:nth-child(1) > td:nth-child(2)" + }, + "DEXTERITY": { + "selector": "table.character__param__list:nth-child(2) tr:nth-child(2) > td:nth-child(2)" + }, + "VITALITY": { + "selector": "table.character__param__list:nth-child(2) tr:nth-child(3) > td:nth-child(2)" + }, + "INTELLIGENCE": { + "selector": "table.character__param__list:nth-child(2) tr:nth-child(4) > td:nth-child(2)" + }, + "MIND": { + "selector": "table.character__param__list:nth-child(2) tr:nth-child(5) > td:nth-child(2)" + }, + "CRITICAL_HIT_RATE": { + "selector": "table.character__param__list:nth-child(4) tr:nth-child(1) > td:nth-child(2)" + }, + "DETERMINATION": { + "selector": "table.character__param__list:nth-child(4) tr:nth-child(2) > td:nth-child(2)" + }, + "DIRECT_HIT_RATE": { + "selector": "table.character__param__list:nth-child(4) tr:nth-child(3) > td:nth-child(2)" + }, + "DEFENSE": { + "selector": "table.character__param__list:nth-child(6) tr:nth-child(1) > td:nth-child(2)" + }, + "MAGIC_DEFENSE": { + "selector": "table.character__param__list:nth-child(6) tr:nth-child(2) > td:nth-child(2)" + }, + "ATTACK_POWER": { + "selector": "table.character__param__list:nth-child(8) tr:nth-child(1) > td:nth-child(2)" + }, + "SKILL_SPEED": { + "selector": "table.character__param__list:nth-child(8) tr:nth-child(2) > td:nth-child(2)" + }, + "ATTACK_MAGIC_POTENCY": { + "selector": "table.character__param__list:nth-child(10) tr:nth-child(1) > td:nth-child(2)" + }, + "HEALING_MAGIC_POTENCY": { + "selector": "table.character__param__list:nth-child(10) tr:nth-child(2) > td:nth-child(2)" + }, + "SPELL_SPEED": { + "selector": "table.character__param__list:nth-child(10) tr:nth-child(3) > td:nth-child(2)" + }, + "TENACITY": { + "selector": "table.character__param__list:nth-child(12) tr:nth-child(1) > td:nth-child(2)" + }, + "PIETY": { + "selector": "table.character__param__list:nth-child(12) tr:nth-child(2) > td:nth-child(2)" + }, + "HP": { + "selector": ".character__param > ul:nth-child(1) > li:nth-child(1) > div:nth-child(1) > span:nth-child(2)" + }, + "MP_GP_CP": { + "selector": ".character__param > ul:nth-child(1) > li:nth-child(2) > div:nth-child(1) > span:nth-child(2)" + }, + "MP_GP_CP_PARAMETER_NAME": { + "selector": ".character__param > ul > li:nth-child(2) .character__param__text" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/character.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/character.json new file mode 100644 index 0000000..6d2ab92 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/character.json @@ -0,0 +1,110 @@ +{ + "ACTIVE_CLASSJOB": { + "selector": ".character__class_icon > img:nth-child(1)", + "attribute": "src" + }, + "ACTIVE_CLASSJOB_LEVEL": { + "selector": ".character__class__data > p:nth-child(1)", + "regex": "LEVEL (?P<Level>\\d*)" + }, + "AVATAR": { + "selector": ".frame__chara__face > img:nth-child(1)", + "attribute": "src" + }, + "BIO": { + "selector": ".character__selfintroduction" + }, + "CLASSJOB_ICONS": { + "ROOT": { + "selector": "li", + "multiple": true + } + }, + "FREE_COMPANY": { + "NAME": { + "selector": ".character__freecompany__name > h4:nth-child(2)" + }, + "ICON_LAYERS": { + "BOTTOM": { + "selector": "div.character__freecompany__crest > div > img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": "div.character__freecompany__crest > div > img:nth-child(1)", + "attribute": "src" + }, + "TOP": { + "selector": "div.character__freecompany__crest > div > img:nth-child(1)", + "attribute": "src" + } + } + }, + "GRAND_COMPANY": { + "selector": "div.character-block:nth-child(4) > div:nth-child(2) > p:nth-child(2)", + "regex": "(?P<Name>\\S*) \/ (?P<Rank>.*)" + }, + "GUARDIAN_DEITY": { + "NAME": { + "selector": "p.character-block__name:nth-child(4)" + }, + "ICON": { + "selector": "#character > div.character__content.selected > div.character__profile.clearfix > div.character__profile__data > div:nth-child(1) > div > div:nth-child(2) > img", + "attribute": "src" + } + }, + "GENDER": { + "selector": "p.character-block__name:nth-child(2)", + "regex": "(.$)" + }, + "NAME": { + "selector": "div.frame__chara__box:nth-child(2) > .frame__chara__name" + }, + "NAMEDAY": { + "selector": ".character-block__birth" + }, + "PORTRAIT": { + "selector": ".js__image_popup > img:nth-child(1)", + "attribute": "src" + }, + "PVP_TEAM": { + "NAME": { + "selector": ".character__pvpteam__name > h4:nth-child(2) > a:nth-child(1)", + "attribute": "href", + "regex": "/lodestone/pvpteam/(?P<ID>.+)/" + }, + "ICON_LAYERS": { + "BOTTOM": { + "selector": ".character__pvpteam__crest__image img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": ".character__pvpteam__crest__image img:nth-child(2)", + "attribute": "src" + }, + "TOP": { + "selector": ".character__pvpteam__crest__image img:nth-child(3)", + "attribute": "src" + } + } + }, + "RACE_CLAN_GENDER": { + "selector": "div.character-block:nth-child(1) > div:nth-child(2) > p:nth-child(2)", + "regex": "(?P<Race>.*)(?P<Tribe>.*) \\/ (?P<Gender>.)" + }, + "SERVER": { + "selector": "p.frame__chara__world:last-of-type", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + }, + "TITLE": { + "selector": ".frame__chara__title" + }, + "TOWN": { + "NAME": { + "selector": "div.character-block:nth-child(3) > div:nth-child(2) > p:nth-child(2)" + }, + "ICON": { + "selector": "#character > div.character__content.selected > div.character__profile.clearfix > div.character__profile__data > div:nth-child(1) > div > div:nth-child(3) > img", + "attribute": "src" + } + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob.json new file mode 100644 index 0000000..9a0c80a --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob.json @@ -0,0 +1,550 @@ +{ + "BOZJA": { + "LEVEL": { + "selector": "div.character__content > div:nth-child(7) > div.character__job__level" + }, + "NAME": { + "selector": "div.character__content > div:nth-child(7) > div.character__job__name" + }, + "METTLE": { + "selector": "div.character__content > div:nth-child(7) > div.character__job__exp", + "regex": "(?P<Mettle>\\S+) \\/" + } + }, + "EUREKA": { + "LEVEL": { + "selector": "div.character__content > div:nth-child(9) > div.character__job__level" + }, + "NAME": { + "selector": "div.character__content > div:nth-child(9) > div.character__job__name" + }, + "EXP": { + "selector": "div.character__content > div:nth-child(9) > div.character__job__exp", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.character__content > div:nth-child(9) > div.character__job__exp", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "PALADIN": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "WARRIOR": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "DARKKNIGHT": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "GUNBREAKER": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "MONK": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "DRAGOON": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "NINJA": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "SAMURAI": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "REAPER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "WHITEMAGE": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "SCHOLAR": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "ASTROLOGIAN": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "SAGE": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "BARD": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "MACHINIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "DANCER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "BLACKMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "SUMMONER": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "REDMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "BLUEMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "CARPENTER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3).character__job__name--meister" + } + }, + "BLACKSMITH": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3).character__job__name--meister" + } + }, + "ARMORER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3).character__job__name--meister" + } + }, + "GOLDSMITH": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3).character__job__name--meister" + } + }, + "LEATHERWORKER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(3).character__job__name--meister" + } + }, + "WEAVER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(3).character__job__name--meister" + } + }, + "ALCHEMIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(3).character__job__name--meister" + } + }, + "CULINARIAN": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + }, + "SPECIALIST": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(3).character__job__name--meister" + } + }, + "MINER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "BOTANIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + }, + "FISHER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "EXP_MAX": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "\\/ (?P<MaxEXP>\\S+)" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob_original.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob_original.json new file mode 100644 index 0000000..3c8f537 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/classjob_original.json @@ -0,0 +1,398 @@ +{ + "BOZJA": { + "LEVEL": { + "selector": "div.character__job__list:nth-child(7) > div:nth-child(2)" + }, + "METTLE": { + "selector": "div.character__job__list:nth-child(7) > div:nth-child(4)", + "regex": "(?P<Mettle>\\S+) \\/" + }, + "NAME": { + "selector": "div.character__job__list:nth-child(7) > div:nth-child(3)" + } + }, + "EUREKA": { + "EXP": { + "selector": "div.character__job__list:nth-child(9) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + }, + "LEVEL": { + "selector": "div.character__job__list:nth-child(9) > div:nth-child(2)" + }, + "NAME": { + "selector": "div.character__job__list:nth-child(9) > div:nth-child(3)" + } + }, + "PALADIN": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "WARRIOR": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "DARKKNIGHT": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "GUNBREAKER": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "WHITEMAGE": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "SCHOLAR": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "ASTROLOGIAN": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "SAGE": { + "LEVEL": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": ".character__content > div:nth-child(2) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "MONK": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "DRAGOON": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "NINJA": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "SAMURAI": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "REAPER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "BARD": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "MACHINIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "DANCER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(3) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "BLACKMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "SUMMONER": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "REDMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "BLUEMAGE": { + "LEVEL": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "ul.character__job:nth-child(4) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "CARPENTER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "BLACKSMITH": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "ARMORER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "GOLDSMITH": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(4) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "LEATHERWORKER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(5) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "WEAVER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(6) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "ALCHEMIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(7) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "CULINARIAN": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(1) > ul:nth-child(2) > li:nth-child(8) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "MINER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(1) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "BOTANIST": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(2) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + }, + "FISHER": { + "LEVEL": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(2)" + }, + "UNLOCKSTATE": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(3)" + }, + "EXP": { + "selector": "div.clearfix:nth-child(5) > div:nth-child(2) > ul:nth-child(2) > li:nth-child(3) > div:nth-child(4)", + "regex": "(?P<CurrentEXP>\\S+) \\/ (?P<MaxEXP>\\S+)" + } + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/gearset.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/gearset.json new file mode 100644 index 0000000..9488f7d --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/gearset.json @@ -0,0 +1,527 @@ +{ + "MAINHAND": { + "NAME": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--0 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "OFFHAND": { + "NAME": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--1 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "HEAD": { + "NAME": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--2 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "BODY": { + "NAME": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--3 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "HANDS": { + "NAME": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--4 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "WAIST": { + "NAME": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--5 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "LEGS": { + "NAME": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--6 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "FEET": { + "NAME": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--7 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "EARRINGS": { + "NAME": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--8 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "NECKLACE": { + "NAME": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--9 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "BRACELETS": { + "NAME": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--10 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "RING1": { + "NAME": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--11 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "RING2": { + "NAME": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + }, + "DB_LINK": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(1)" + }, + "MIRAGE_NAME": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2)" + }, + "MIRAGE_DB_LINK": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > div:nth-child(3) > p:nth-child(2) > a:nth-child(1)" + }, + "STAIN": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1)" + }, + "MATERIA_1": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(1) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_2": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(2) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_3": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(3) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_4": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(4) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "MATERIA_5": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(5) > ul:nth-child(7) > li:nth-child(5) > div:nth-child(2)", + "regex": "(?P<Name>.*)<br/>" + }, + "CREATOR_NAME": { + "selector": ".icon-c--12 > .db-tooltip > div:nth-child(1) > div:nth-child(1) > div:nth-child(7) > div:nth-child(1) > a:nth-child(1)" + } + }, + "SOULCRYSTAL": { + "NAME": { + "selector": ".icon-c--13 > div:nth-child(3) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > h2:nth-child(2)" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/minion.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/minion.json new file mode 100644 index 0000000..05e22de --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/minion.json @@ -0,0 +1,18 @@ +{ + "MINIONS": { + "ROOT": { + "selector": ".minion__list__item", + "multiple": true + }, + "NAME": { + "selector": ".minion__name" + }, + "ICON": { + "selector": ".minion__list__icon__image", + "attribute": "src" + } + }, + "TOTAL": { + "selector": ".minion__sort__total > span:nth-child(1)" + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/profile/mount.json b/ffxiv/lodestone-css-selectors-0.52.0/profile/mount.json new file mode 100644 index 0000000..5bca606 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/profile/mount.json @@ -0,0 +1,18 @@ +{ + "MOUNTS": { + "ROOT": { + "selector": ".mount__list__item", + "multiple": true + }, + "NAME": { + "selector": ".mount__name" + }, + "ICON": { + "selector": ".mount__list__icon__image", + "attribute": "src" + } + }, + "TOTAL": { + "selector": ".minion__sort__total > span:nth-child(1)" + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/members.json b/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/members.json new file mode 100644 index 0000000..2dd507f --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/members.json @@ -0,0 +1,39 @@ +{ + "ROOT": { + "selector": ".pvpteam__member" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "AVATAR": { + "selector": ".entry__chara__face img", + "attribute": "src" + }, + "ID": { + "selector": ".entry__bg", + "attribute": "href", + "regex": "/lodestone/character/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "MATCHES": { + "selector": ".entry__freecompany__info > li:last-of-type > span" + }, + "RANK": { + "selector": ".entry__freecompany__info > .js__tooltip", + "attribute": "data-tooltip", + "regex": "/ (?P<RankName>.+)" + }, + "RANK_ICON": { + "selector": ".entry__freecompany__info > .js__tooltip > img", + "attribute": "src" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + } + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/pvpteam.json b/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/pvpteam.json new file mode 100644 index 0000000..6bb7cf8 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/pvpteam/pvpteam.json @@ -0,0 +1,26 @@ +{ + "NAME": { + "selector": ".entry__pvpteam__name--team" + }, + "DC": { + "selector": ".entry__pvpteam__name--dc" + }, + "FORMED": { + "selector": ".entry__pvpteam__data--formed > script", + "regex": ".*ldst_strftime\\((?P<Timestamp>\\d*)" + }, + "CREST_LAYERS": { + "BOTTOM": { + "selector": ".entry__pvpteam__crest__image > img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": ".entry__pvpteam__crest__image > img:nth-child(2)", + "attribute": "src" + }, + "TOP": { + "selector": ".entry__pvpteam__crest__image > img:nth-child(3)", + "attribute": "src" + } + } +}
\ No newline at end of file diff --git a/ffxiv/lodestone-css-selectors-0.52.0/search/character.json b/ffxiv/lodestone-css-selectors-0.52.0/search/character.json new file mode 100644 index 0000000..7ae9c00 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/search/character.json @@ -0,0 +1,50 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "AVATAR": { + "selector": ".entry__chara__face > img", + "attribute": "src" + }, + "ID": { + "selector": ".entry__link", + "attribute": "href", + "regex": "/lodestone/character/(?P<ID>\\d*)/" + }, + "LANG": { + "selector": ".entry__chara__lang" + }, + "NAME": { + "selector": ".entry__name" + }, + "RANK": { + "selector": ".entry__chara_info > .js__tooltip", + "attribute": "data-tooltip", + "regex": "/ (?P<RankName>.+)" + }, + "RANK_ICON": { + "selector": ".entry__chara_info > .js__tooltip > img", + "attribute": "src" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + } + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "PAGE_INFO": { + "selector": "ul.btn__pager > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/search/cwls.json b/ffxiv/lodestone-css-selectors-0.52.0/search/cwls.json new file mode 100644 index 0000000..7efe25a --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/search/cwls.json @@ -0,0 +1,36 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "ID": { + "selector": ".entry__link--line", + "attribute": "href", + "regex": "/lodestone/crossworld_linkshell/(?P<ID>\\w*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "DC": { + "selector": ".entry__world" + }, + "ACTIVE_MEMBERS": { + "selector": ".entry__linkshell__member > div > span" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(6) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/search/freecompany.json b/ffxiv/lodestone-css-selectors-0.52.0/search/freecompany.json new file mode 100644 index 0000000..90f0bbe --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/search/freecompany.json @@ -0,0 +1,69 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "CREST_LAYERS": { + "BOTTOM": { + "selector": ".entry__freecompany__crest__image > img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": ".entry__freecompany__crest__image > img:nth-child(2)", + "attribute": "src" + }, + "TOP": { + "selector": ".entry__freecompany__crest__image > img:nth-child(3)", + "attribute": "src" + } + }, + "ID": { + "selector": ".entry__block", + "attribute": "href", + "regex": "/lodestone/freecompany/(?P<ID>\\d*)/" + }, + "GRAND_COMPANY": { + "selector": ".entry__world:nth-child(1)" + }, + "NAME": { + "selector": ".entry__name" + }, + "SERVER": { + "selector": ".entry__world:nth-child(3)", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + }, + "ACTIVE": { + "selector": "li.entry__freecompany__fc-active:nth-child(4)", + "regex": "Active:\\s+(?P<State>\\w*)" + }, + "ACTIVE_MEMBERS": { + "selector": ".entry__freecompany__fc-member" + }, + "RECRUITMENT_OPEN": { + "selector": "li.entry__freecompany__fc-active:nth-child(5)", + "regex": "Recruitment:\\s+(?P<State>\\w*)" + }, + "ESTATE_BUILT": { + "selector": ".entry__freecompany__fc-housing" + }, + "FORMED": { + "selector": ".entry__freecompany__fc-day > script", + "regex": ".*ldst_strftime\\((?P<Timestamp>\\d*)" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(6) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/search/linkshell.json b/ffxiv/lodestone-css-selectors-0.52.0/search/linkshell.json new file mode 100644 index 0000000..f9c6bc0 --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/search/linkshell.json @@ -0,0 +1,37 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "ID": { + "selector": ".entry__link--line", + "attribute": "href", + "regex": "/lodestone/linkshell/(?P<ID>\\d*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "SERVER": { + "selector": ".entry__world", + "regex": "(?P<World>\\w*)\\s+\\[(?P<DC>\\w*)\\]" + }, + "ACTIVE_MEMBERS": { + "selector": ".entry__linkshell__member > div > span" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(6) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + } +} diff --git a/ffxiv/lodestone-css-selectors-0.52.0/search/pvpteam.json b/ffxiv/lodestone-css-selectors-0.52.0/search/pvpteam.json new file mode 100644 index 0000000..ae1c51d --- /dev/null +++ b/ffxiv/lodestone-css-selectors-0.52.0/search/pvpteam.json @@ -0,0 +1,47 @@ +{ + "ROOT": { + "selector": ".ldst__window" + }, + "ENTRY": { + "ROOT": { + "selector": "div.entry", + "multiple": true + }, + "CREST_LAYERS": { + "BOTTOM": { + "selector": ".entry__pvpteam__search__crest__image > img:nth-child(1)", + "attribute": "src" + }, + "MIDDLE": { + "selector": ".entry__pvpteam__search__crest__image > img:nth-child(2)", + "attribute": "src" + }, + "TOP": { + "selector": ".entry__pvpteam__search__crest__image > img:nth-child(3)", + "attribute": "src" + } + }, + "ID": { + "selector": ".entry__block", + "attribute": "href", + "regex": "/lodestone/pvpteam/(?P<ID>\\w*)/" + }, + "NAME": { + "selector": ".entry__name" + }, + "DC": { + "selector": ".entry__world" + } + }, + "PAGE_INFO": { + "selector": "ul.btn__pager:nth-child(6) > li:nth-child(3)", + "regex": "\\D*(?P<CurrentPage>\\d+)\\D*(?P<NumPages>\\d+)" + }, + "LIST_NEXT_BUTTON": { + "selector": "ul.btn__pager > li:nth-child(4) > a:nth-child(1)", + "attribute": "href" + }, + "NO_RESULTS_FOUND": { + "selector": ".parts__zero" + } +} |