├── static ├── messages.json ├── tokens.json ├── schedules.json ├── img_upload_bottom.txt ├── favicon.ico ├── img_upload_top.txt ├── login.css ├── style2.css └── style.css ├── requirements.txt ├── templates ├── force.html ├── results.html ├── index.html ├── layout.html ├── layout2.html ├── profile.html ├── conversations.html ├── autoreplier.html ├── schedule.html ├── conversation.html ├── home.html ├── ad.html ├── post.html ├── search.html └── stage2.html ├── LICENSE ├── README.md ├── kijijiapi.py └── server.py /static/messages.json: -------------------------------------------------------------------------------- 1 | { 2 | "users": [] 3 | } -------------------------------------------------------------------------------- /static/tokens.json: -------------------------------------------------------------------------------- 1 | { 2 | "users": [] 3 | } -------------------------------------------------------------------------------- /static/schedules.json: -------------------------------------------------------------------------------- 1 | { 2 | "schedules": [] 3 | } -------------------------------------------------------------------------------- /static/img_upload_bottom.txt: -------------------------------------------------------------------------------- 1 | 2 | ------FormBoundary7MA4YWxkTrZu0gW-- 3 | -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rybodiddly/Kijiji-Reposter/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | apscheduler 2 | flask 3 | flask-wtf 4 | httpx 5 | pgeocode 6 | xmltodict 7 | urllib3 8 | -------------------------------------------------------------------------------- /templates/force.html: -------------------------------------------------------------------------------- 1 | {% extends 'layout2.html' %} 2 | 3 | {% block title %}Force Post Ad{% endblock %} 4 | 5 | {% block content %} 6 | 7 | 8 |
Results |
Your account details are below:
9 || Display Name | 12 |{{ data['user:user-profile']['user:user-display-name'] }} | 13 |
| Nickname | 16 |{{ data['user:user-profile']['user:user-nickname'] }} | 17 |
| User ID # | 20 |{{ data['user:user-profile']['user:user-id'] }} | 21 |
| User Email | 24 |{{ data['user:user-profile']['user:user-email'] }} | 25 |
| Registration Date | 28 |{{ data['user:user-profile']['user:user-registration-date']|convert }} | 29 |
| Reply Rate | 32 |{{ data['user:user-profile']['user:reply-rate'] }} | 33 |
| Review Score | 36 |{{ data['user:user-profile']['user:average-review-score'] }} | 37 |
Conversations | Next |
| Rule | 14 |{{rule['rule']}} | 15 |16 | |
| Response | 19 |{{rule['response']}} | 20 |21 | |
Conversation Details |
| Sender | 13 |Message | 14 |Date | 15 |
| {{ item['user:sender-name'] }} | 21 |{{ item['user:msg-content'] }} | 22 |{{ item['user:post-time-stamp']|convert }} | 23 |
| {{ conversation['user:user-conversation']['user:user-message']['user:sender-name'] }} | 28 |{{ conversation['user:user-conversation']['user:user-message']['user:msg-content'] }} | 29 |{{ conversation['user:user-conversation']['user:user-message']['user:post-time-stamp']|convert }} | 30 |
Listings |
Welcome back, {{ email }}!
10 || Image | 13 |Ad # | 14 |Title | 15 |Category | 16 |Price | 17 |Created | 18 |Expires | 19 |||
| {{ item['@id'] }} | 26 |{{ item['ad:title'] }} | 27 |{{ item['cat:category']['@id'] }} | 28 |{% if 'ad:price' in item %} 29 | {% if item['ad:price']['types:price-type']['types:value'] == 'SPECIFIED_AMOUNT'%} 30 | {{ item['ad:price']['types:amount'] }} 31 | {% else %} 32 | {{ item['ad:price']['types:price-type']['types:value'] }} 33 | {% endif %} 34 | {% endif %} | 35 |{{ item['ad:start-date-time']|convert }} | 36 |{{ item['ad:end-date-time']|convert }} | 37 |{% if item['@id']|checkSchedule == true %}{% endif %} | 38 |39 | | |
| {{ data['ad:ads']['ad:ad']['@id'] }} | 45 |{{ data['ad:ads']['ad:ad']['ad:title'] }} | 46 |{{ data['ad:ads']['ad:ad']['cat:category']['@id'] }} | 47 |{% if 'ad:price' in data['ad:ads']['ad:ad'] %} 48 | {% if data['ad:ads']['ad:ad']['ad:price']['types:price-type']['types:value'] == 'SPECIFIED_AMOUNT'%} 49 | {{ data['ad:ads']['ad:ad']['ad:price']['types:amount'] }} 50 | {% else %} 51 | {{ data['ad:ads']['ad:ad']['ad:price']['types:price-type']['types:value'] }} 52 | {% endif %} 53 | {% endif %} | 54 |{{ data['ad:ads']['ad:ad']['ad:start-date-time']|convert }} | 55 |{{ data['ad:ads']['ad:ad']['ad:end-date-time']|convert }} | 56 |{% if data['ad:ads']['ad:ad']['@id']|checkSchedule == true %}{% endif %} | 57 |58 | |
| Ad title | 11 |{{ data['ad:ad']['ad:title'] }} | 12 |
| Category | 15 |{{ data['ad:ad']['cat:category']['cat:id-name'] }} | 16 |
| Category ID | 19 |{{ data['ad:ad']['cat:category']['@id'] }} | 20 |
| Price | 23 |{% if 'ad:price' in data['ad:ad'] %}{% if data['ad:ad']['ad:price']['types:price-type']['types:value'] == 'SPECIFIED_AMOUNT' %}{{ data['ad:ad']['ad:price']['types:amount'] }}{% else %}None{% endif %}{% else %}None{% endif %} | 24 |
| Description | 27 |{{ data['ad:ad']['ad:description'] }} | 28 |
| Seller ID | 31 |{{ data['ad:ad']['ad:user-id'] }} | 32 |
| Location ID | 35 |{{ data['ad:ad']['loc:locations']['loc:location']['@id'] }} | 36 |
| Longitude | 39 |{{ data['ad:ad']['loc:locations']['loc:location']['loc:longitude'] }} | 40 |
| Latitude | 43 |{{ data['ad:ad']['loc:locations']['loc:location']['loc:latitude'] }} | 44 |
| Address | 47 |{{ data['ad:ad']['ad:ad-address']['types:full-address'] }} | 48 |
| Creation Date | 51 |{{ data['ad:ad']['ad:creation-date-time']|convert }} | 52 |
| Start Date | 55 |{{ data['ad:ad']['ad:start-date-time']|convert }} | 56 |
| End Date | 59 |{{ data['ad:ad']['ad:end-date-time']|convert }} | 60 |
| Ranking | 63 |{{ data['ad:ad']['ad:rank'] }} | 64 |
| Views | 67 |{{ data['ad:ad']['ad:view-ad-count'] }} | 68 |
| Pics | 71 |{% for item in data['ad:ad']|imglist %}{{item+"\n"}}{% endfor %} | 72 |