0
0
mirror of https://github.com/Maks1mS/free-ozon-dpr.git synced 2024-12-23 18:42:59 +03:00

Compare commits

...

9 Commits

Author SHA1 Message Date
github-actions[bot]
6579e2b94b [Automated action] Update points
Some checks failed
Update / update (push) Has been cancelled
2024-06-06 18:14:10 +00:00
6646d1d71d [ci] debug 2024-06-06 21:12:37 +03:00
03846bccd0 [ci] fix "Commit changes" 2024-06-06 20:59:19 +03:00
3e577d1828 fix action 2024-06-06 20:55:37 +03:00
58df91bf0a wip 2024-06-06 20:54:27 +03:00
d941934758 migrate to whatshere 2024-06-06 20:37:58 +03:00
38ea2317c0 add address link 2024-06-06 20:31:02 +03:00
da2fed1fd2 add auto update ozon_wb_dpr 2024-06-06 19:38:01 +03:00
1093d592ca fix WOЯЖ address 2024-06-06 17:19:54 +03:00
14 changed files with 522 additions and 170 deletions

36
.github/workflows/update.yml vendored Normal file
View File

@ -0,0 +1,36 @@
name: Update
permissions:
contents: write
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * *'
jobs:
update:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v1
with:
node-version: 20
- name: Install
run: npm ci
- name: Update points
run: node scripts/update.js && node scripts/merge-data.js
env:
NODE_DEBUG: net
- name: Commit changes
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git commit -am "[Automated action] Update points" || true
git push

View File

@ -8,7 +8,7 @@
47.948376
],
"name": "ПВЗ-03 Ляшенко",
"address": "Донецк-2, ул. Ляшенко 1а",
"address": "Донецк, Ляшенко 1а",
"link": "https://ozon.ru/point/538097",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -18,7 +18,7 @@
47.988652
],
"name": "ПВЗ-08 Первомайская",
"address": "Донецк-6, ул. Первомайская",
"address": "Донецк, ул. Первомайская (АС Центр)",
"link": "https://ozon.ru/point/538186",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -28,7 +28,7 @@
48.006233
],
"name": "ПВЗ-10 Театральный",
"address": "Донецк-7, ул. Университетская 26",
"address": "Донецк, ул. Университетская 26",
"link": "https://ozon.ru/point/524639",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -38,7 +38,7 @@
48.009223
],
"name": "ПВЗ-11 Шевченко",
"address": "Донецк-8, бул. Шевченко 77",
"address": "Донецк, бул. Шевченко 77",
"link": "https://ozon.ru/point/536833",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -58,7 +58,7 @@
48.000825
],
"name": "ПВЗ-14 Ильича",
"address": "Донецк-10, пр. Ильича 27",
"address": "Донецк, пр. Ильича 27",
"link": "https://ozon.ru/point/538179",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -68,7 +68,7 @@
47.9534
],
"name": "ПВЗ-15 Боссе",
"address": "Донецк-11, ул. Речная 24б",
"address": "Донецк, ул. Речная 24б",
"link": "https://ozon.ru/point/536838",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -98,7 +98,7 @@
48.008645
],
"name": "ПВЗ-21 Крытый",
"address": "Донецк-15, ул. 50-летия СССР 150",
"address": "Донецк, ул. 50-летия СССР 150",
"link": "https://ozon.ru/point/533314",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -108,7 +108,7 @@
47.99136
],
"name": "ПВЗ-22 Независимости",
"address": "Донецк-16, ул. Независимости 16д",
"address": "Донецк, ул. Независимости 16д",
"link": "https://ozon.ru/point/536826",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -118,7 +118,7 @@
47.975167
],
"name": "ПВЗ-23 Раздольная",
"address": "Донецк-17, ул. Раздольная 6",
"address": "Донецк, ул. Раздольная 6",
"link": "https://ozon.ru/point/533348",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -128,7 +128,7 @@
47.975021
],
"name": "ПВЗ-24 Соловки",
"address": "Донецк-18, ул. Пилотная 28",
"address": "Донецк, ул. Пилотная 28",
"link": "https://ozon.ru/point/536830",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -138,7 +138,7 @@
48.098354
],
"name": "ПВЗ-25 МК3 Черемушки",
"address": "Макеевка-3, квартал Северный 17",
"address": "Макеевка, квартал Северный 17",
"link": "https://ozon.ru/point/534957",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -148,7 +148,7 @@
48.008783
],
"name": "ПВЗ-26 Шахтостроителей",
"address": "Донецк-19, бул. Шахтостроителей 20",
"address": "Донецк, бул. Шахтостроителей 20",
"link": "https://ozon.ru/point/534949",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -158,7 +158,7 @@
48.022137
],
"name": "ПВЗ-27 Детский Мир",
"address": "Донецк-20, ул. Артема 147а",
"address": "Донецк, ул. Артема 147а",
"link": "https://ozon.ru/point/536823",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -168,7 +168,7 @@
47.991033
],
"name": "ПВЗ-30 Постышева",
"address": "Донецк-23, ул. Постышева 43",
"address": "Донецк, ул. Постышева 43",
"link": "https://ozon.ru/point/538183",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -178,7 +178,7 @@
47.99713
],
"name": "ПВЗ-33 Пирамида",
"address": "Донецк-25, ул. 50-летия СССР 100",
"address": "Донецк, ул. 50-летия СССР 100",
"link": "https://ozon.ru/point/533329",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -188,7 +188,7 @@
48.044231
],
"name": "ПВЗ-34 Киевский",
"address": "Донецк-26, пр. Киевский 24",
"address": "Донецк, пр. Киевский 24",
"link": "https://ozon.ru/point/538182",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -198,7 +198,7 @@
48.028202
],
"name": "ПВЗ-35 Топаз",
"address": "Донецк-27, ул. Куйбышева 169б",
"address": "Донецк, ул. Куйбышева 169б",
"link": "https://ozon.ru/point/538096",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -208,7 +208,7 @@
48.100112
],
"name": "ПВЗ-36 МК-4 Даки",
"address": "Макеевка-4, ул. 50 лет Образования СССР 24а",
"address": "Макеевка, ул. 50 лет Образования СССР 24а",
"link": "https://ozon.ru/point/538184",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -218,7 +218,7 @@
48.034874
],
"name": "ПВЗ-38 Волна",
"address": "Донецк-29, ул. Куйбышева 217Б",
"address": "Донецк, ул. Куйбышева 217Б",
"link": "https://ozon.ru/point/533332",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -228,7 +228,7 @@
47.970189
],
"name": "ПВЗ-39 Семашко",
"address": "Донецк-30, ул. Коммунаров 38 (Семашко)",
"address": "Донецк, ул. Коммунаров 38",
"link": "https://ozon.ru/point/535056",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -238,7 +238,7 @@
47.945246
],
"name": "ПВЗ-40 Островского20",
"address": "Донецк-31, ул. Островского 20 (Текстильщик)",
"address": "Донецк, ул. Островского 20",
"link": "https://ozon.ru/point/533345",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -248,7 +248,7 @@
48.004304
],
"name": "ПВЗ-43 Гурова 22",
"address": "Донецк-34, пр. Гурова 22",
"address": "Донецк, пр. Гурова 22",
"link": "https://ozon.ru/point/538094",
"operationTime": "пн-вс с 9:00 до 17:45"
},
@ -258,7 +258,7 @@
47.95952
],
"name": "ПВЗ-44 Кольцова15",
"address": "Донецк-35, ул. Кольцова 15",
"address": "Донецк, ул. Кольцова 15",
"link": "https://ozon.ru/point/538095",
"operationTime": "пн-вс с 9:00 до 17:45"
}

View File

@ -7,9 +7,9 @@
37.845475,
47.994778
],
"name": "ПВЗ г.Донецк, ул. Харитонова, 3",
"name": "ПВЗ г.Донецк, ул.Харитонова, 3",
"address": "г.Донецк, ул.Харитонова, 3",
"link": "https://ozon.ru/point/517058",
"address": "г.Донецк, ул. Харитонова, 3",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -17,9 +17,9 @@
37.790642,
47.988073
],
"name": "ПВЗ Донецк, пр-т. Ленинский, 4",
"name": "ПВЗ г.Донецк, пр.Ленинский, 4",
"address": "г.Донецк, пр.Ленинский, 4",
"link": "https://ozon.ru/point/517054",
"address": "г.Донецк, пр-т. Ленинский, 4",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -27,9 +27,9 @@
37.694046,
47.949874
],
"name": "ПВЗ: Донецк, ул. Петровского, 111в",
"name": "ПВЗ г.Донецк, ул.Петровского, 111в",
"address": "г.Донецк, ул.Петровского, 111в",
"link": "https://ozon.ru/point/517053",
"address": "г.Донецк, ул. Петровского, 111в",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -37,9 +37,9 @@
37.798637,
48.009
],
"name": "ПВЗ г.Донецк, ул. Университетская, 34",
"name": "ПВЗ г.Донецк, ул.Университетская, 34",
"address": "г.Донецк, ул.Университетская, 34",
"link": "https://ozon.ru/point/514822",
"address": "г.Донецк, ул. Университетская, 34",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -47,9 +47,9 @@
37.899868,
47.991365
],
"name": "ПВЗ г.Донецк, ул. Полоцкая, 9",
"name": "ПВЗ г.Донецк, ул.Полоцкая, 9",
"address": "г.Донецк, ул.Полоцкая, 9",
"link": "https://ozon.ru/point/517056",
"address": "г.Донецк, ул. Полоцкая, 9",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -57,9 +57,9 @@
37.551447,
47.106867
],
"name": "ПВЗ г.Мариуполь, пр. Металлургов, 94",
"name": "ПВЗ г.Мариуполь, пр.Металлургов, 94",
"address": "г.Мариуполь, пр.Металлургов, 94",
"link": "https://ozon.ru/point/516734",
"address": "г.Мариуполь, пр. Металлургов, 94",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -67,9 +67,9 @@
37.960468,
48.041197
],
"name": "ПВЗ г. Макеевка, ул.Рябцева, 1",
"name": "ПВЗ г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
"link": "https://ozon.ru/point/517062",
"address": "г.Макеевка, ул. Рябцева, 1",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -77,9 +77,9 @@
37.781488,
48.03651
],
"name": "ПВЗ г.Донецк, ул. Артема, 148а",
"name": "ПВЗ г.Донецк, ул.Артема, 148а",
"address": "г.Донецк, ул.Артема, 148а",
"link": "https://ozon.ru/point/517055",
"address": "г.Донецк, ул. Артема, 148а",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -87,9 +87,9 @@
37.7964,
48.00381
],
"name": "ПВЗ Донецк, пр-т. Гурова, 7",
"name": "ПВЗ г.Донецк, пр.Гурова, 7",
"address": "г.Донецк, пр.Гурова, 7",
"link": "https://ozon.ru/point/517061",
"address": "г.Донецк, пр-т. Гурова, 7",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -97,9 +97,9 @@
37.807934,
48.014371
],
"name": "ПВЗ г.Донецк, ул. Челюскинцев, 167",
"name": "ПВЗ г.Донецк, ул.Челюскинцев, 167",
"address": "г.Донецк, ул.Челюскинцев, 167",
"link": "https://ozon.ru/point/517059",
"address": "г.Донецк, ул. Челюскинцев, 167",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -107,9 +107,9 @@
37.835405,
48.002471
],
"name": "ПВЗ г.Донецк, пр. Ильича, 32",
"name": "ПВЗ г.Донецк, пр.Ильича, 32",
"address": "г.Донецк, пр.Ильича, 32",
"link": "https://ozon.ru/point/514844",
"address": "г.Донецк, пр. Ильича, 32",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -117,9 +117,9 @@
38.026077,
48.045442
],
"name": "ПВЗ г.Макеевка, пр. Генерала Данилова, 71б",
"name": "ПВЗ г.Макеевка, пр.Генерала Данилова, 71б",
"address": "г.Макеевка, пр.Генерала Данилова, 71б",
"link": "https://ozon.ru/point/534902",
"address": "г.Макеевка, пр. Генерала Данилова, 71б",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -127,9 +127,9 @@
37.778362,
47.978513
],
"name": "ПВЗ г.Донецк, ул. Воровского, 9",
"name": "ПВЗ г. Донецк, ул.Воровского, 9",
"address": "г. Донецк, ул.Воровского, 9",
"link": "https://ozon.ru/point/534899",
"address": "г.Донецк, ул. Воровского, 9",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -137,9 +137,29 @@
38.084391,
47.11915
],
"name": "ПВЗ г.Новоазовск, ул. Ленина, 48",
"name": "ПВЗ г.Новоазовск, ул.Ленина, 48",
"address": "г.Новоазовск, ул.Ленина, 48",
"link": "https://ozon.ru/point/533305",
"address": "г.Новоазовск, ул. Ленина, 48",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
"coordinates": [
37.795933,
48.021495
],
"name": "ПВЗ г.Донецк, ул.Университетская, 76",
"address": "г.Донецк, ул.Университетская, 76",
"link": "https://ozon.ru/point/538086",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
"coordinates": [
37.958366,
48.084373
],
"name": "ПВЗ г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
"link": "https://ozon.ru/point/517062",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
@ -147,9 +167,29 @@
37.907342,
47.977482
],
"name": "ПВЗ г.Донецк, ул. Прожекторная, 3",
"name": "ПВЗ г.Донецк, ул.Прожекторная, 3",
"address": "г.Донецк, ул.Прожекторная, 3",
"link": "https://ozon.ru/point/533308",
"address": "г.Донецк, ул. Прожекторная, 3",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
"coordinates": [
37.864259,
48.009494
],
"name": "ПВЗ г.Донецк, бул.Шевченко, 129",
"address": "г.Донецк, бул.Шевченко, 129",
"link": "https://ozon.ru/point/538180",
"operationTime": "пн-вс с 9:00 до 17:45"
},
{
"coordinates": [
37.963765,
48.054088
],
"name": "ПВЗ г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
"link": "https://ozon.ru/point/517062",
"operationTime": "пн-вс с 9:00 до 17:45"
}
]

View File

@ -9,6 +9,7 @@
],
"link": "https://ozon.ru/point/517053",
"name": "г.Донецк, ул. Петровского, 111в",
"address": "г.Донецк, ул. Петровского, 111в",
"operationTime": "неизвестно"
},
{
@ -18,6 +19,7 @@
],
"link": "https://ozon.ru/point/517054",
"name": "г.Донецк, пр-т. Ленинский, 4",
"address": "г.Донецк, пр-т. Ленинский, 4",
"operationTime": "неизвестно"
},
{
@ -27,6 +29,7 @@
],
"link": "https://ozon.ru/point/517061",
"name": "г.Донецк, пр-т. Гурова, 7",
"address": "г.Донецк, пр-т. Гурова, 7",
"operationTime": "неизвестно"
},
{
@ -36,6 +39,7 @@
],
"link": "https://ozon.ru/point/517062",
"name": "г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
"operationTime": "неизвестно"
},
{
@ -45,6 +49,7 @@
],
"link": "https://ozon.ru/point/517055",
"name": "г.Донецк, ул. Артема, 148а",
"address": "г.Донецк, ул. Артема, 148а",
"operationTime": "неизвестно"
},
{
@ -54,6 +59,7 @@
],
"link": "https://ozon.ru/point/517058",
"name": "г.Донецк, ул. Харитонова, 3А",
"address": "г.Донецк, ул. Харитонова, 3А",
"operationTime": "неизвестно"
},
{
@ -63,6 +69,7 @@
],
"link": "https://ozon.ru/point/514844",
"name": "г.Донецк, пр. Ильича, 32",
"address": "г.Донецк, пр. Ильича, 32",
"operationTime": "неизвестно"
},
{
@ -72,6 +79,7 @@
],
"link": "https://ozon.ru/point/517059",
"name": "г.Донецк, ул. Челюскинцев, 167",
"address": "г.Донецк, ул. Челюскинцев, 167",
"operationTime": "неизвестно"
},
{
@ -81,6 +89,7 @@
],
"link": "https://ozon.ru/point/517056",
"name": "г.Донецк, ул. Полоцкая, 9",
"address": "г.Донецк, ул. Полоцкая, 9",
"operationTime": "неизвестно"
},
{
@ -90,6 +99,7 @@
],
"link": "https://ozon.ru/point/514822",
"name": "г.Донецк, ул. Университетская, 34",
"address": "г.Донецк, ул. Университетская, 34",
"operationTime": "неизвестно"
},
{
@ -99,6 +109,7 @@
],
"link": "https://ozon.ru/point/516734",
"name": "г.Мариуполь, пр. Металлургов, 94",
"address": "г.Мариуполь, пр. Металлургов, 94",
"operationTime": "неизвестно"
},
{
@ -108,6 +119,7 @@
],
"link": "https://ozon.ru/point/518290",
"name": "г. Мариуполь ул. Урицкого 63",
"address": "г. Мариуполь ул. Урицкого 63",
"operationTime": "неизвестно"
},
{
@ -117,6 +129,7 @@
],
"link": "https://ozon.ru/point/524639",
"name": "Донецк, Университетская улица, 26",
"address": "Донецк, Университетская улица, 26",
"operationTime": "неизвестно"
},
{
@ -126,6 +139,7 @@
],
"link": "https://ozon.ru/point/524695",
"name": "Макеевка, улица Ленина, 50А",
"address": "Макеевка, улица Ленина, 50А",
"operationTime": "неизвестно"
},
{
@ -135,6 +149,7 @@
],
"link": "https://ozon.ru/point/533299",
"name": "Макеевка, улица Ленина, 108",
"address": "Макеевка, улица Ленина, 108",
"operationTime": "неизвестно"
},
{
@ -144,6 +159,7 @@
],
"link": "https://ozon.ru/point/533305",
"name": "Новоазовск, улица Ленина, 48",
"address": "Новоазовск, улица Ленина, 48",
"operationTime": "неизвестно"
},
{
@ -153,6 +169,7 @@
],
"link": "https://ozon.ru/point/533308",
"name": "Донецк, Прожекторная улица, 3",
"address": "Донецк, Прожекторная улица, 3",
"operationTime": "неизвестно"
},
{
@ -162,6 +179,7 @@
],
"link": "https://ozon.ru/point/533314",
"name": "Донецк, улица 50-летия СССР, 150",
"address": "Донецк, улица 50-летия СССР, 150",
"operationTime": "неизвестно"
},
{
@ -171,6 +189,7 @@
],
"link": "https://ozon.ru/point/533323",
"name": "Донецк, улица 50-летия СССР, 157А",
"address": "Донецк, улица 50-летия СССР, 157А",
"operationTime": "неизвестно"
},
{
@ -180,6 +199,7 @@
],
"link": "https://ozon.ru/point/533329",
"name": "Донецк, улица 50-летия СССР, 100",
"address": "Донецк, улица 50-летия СССР, 100",
"operationTime": "неизвестно"
},
{
@ -189,6 +209,7 @@
],
"link": "https://ozon.ru/point/533332",
"name": "Донецк, улица Куйбышева, 217Б",
"address": "Донецк, улица Куйбышева, 217Б",
"operationTime": "неизвестно"
},
{
@ -198,6 +219,7 @@
],
"link": "https://ozon.ru/point/533345",
"name": "Донецк, Кировский район, улица Островского, 20",
"address": "Донецк, Кировский район, улица Островского, 20",
"operationTime": "неизвестно"
},
{
@ -207,6 +229,7 @@
],
"link": "https://ozon.ru/point/533347",
"name": "Донецк, ул. Павших Коммунаров 1. ТЦ «Южный»",
"address": "Донецк, ул. Павших Коммунаров 1. ТЦ «Южный»",
"operationTime": "неизвестно"
},
{
@ -216,6 +239,7 @@
],
"link": "https://ozon.ru/point/533348",
"name": "Донецк, Раздольная улица, 6",
"address": "Донецк, Раздольная улица, 6",
"operationTime": "неизвестно"
},
{
@ -225,6 +249,7 @@
],
"link": "https://ozon.ru/point/533350",
"name": "Чистяково / Торез, 4-й микрорайон, (Торговые павильоны в районе дома 23)",
"address": "Чистяково / Торез, 4-й микрорайон, (Торговые павильоны в районе дома 23)",
"operationTime": "неизвестно"
},
{
@ -234,6 +259,7 @@
],
"link": "https://ozon.ru/point/534899",
"name": "Донецк, ул. Воровского 9",
"address": "Донецк, ул. Воровского 9",
"operationTime": "неизвестно"
},
{
@ -243,6 +269,7 @@
],
"link": "https://ozon.ru/point/534902",
"name": "г. Макеевка, пр. генерала Данилова 71б",
"address": "г. Макеевка, пр. генерала Данилова 71б",
"operationTime": "неизвестно"
},
{
@ -252,6 +279,7 @@
],
"link": "https://ozon.ru/point/534903",
"name": "Енакиево, пр. Ленина 98В",
"address": "Енакиево, пр. Ленина 98В",
"operationTime": "неизвестно"
},
{
@ -261,6 +289,7 @@
],
"link": "https://ozon.ru/point/534903",
"name": "Снежное, ул. Дзержинского, 2",
"address": "Снежное, ул. Дзержинского, 2",
"operationTime": "неизвестно"
},
{
@ -270,6 +299,7 @@
],
"link": "https://ozon.ru/point/535038",
"name": "г. Харцызск, ул. Октябрьская 84",
"address": "г. Харцызск, ул. Октябрьская 84",
"operationTime": "неизвестно"
},
{
@ -279,6 +309,7 @@
],
"link": "https://ozon.ru/point/534940",
"name": "г. Харцызск, м-н Юбилейный 4",
"address": "г. Харцызск, м-н Юбилейный 4",
"operationTime": "неизвестно"
},
{
@ -288,6 +319,7 @@
],
"link": "https://ozon.ru/point/534940",
"name": "Донецк, бул. Шахтостроителей 20",
"address": "Донецк, бул. Шахтостроителей 20",
"operationTime": "неизвестно"
},
{
@ -297,6 +329,7 @@
],
"link": "https://ozon.ru/point/534953",
"name": "Донецк, пр - кт Ленинский, остановка Звездный’",
"address": "Донецк, пр - кт Ленинский, остановка Звездный’",
"operationTime": "неизвестно"
},
{
@ -306,6 +339,7 @@
],
"link": "https://ozon.ru/point/534953",
"name": "Макеевка, кв. Северный 17",
"address": "Макеевка, кв. Северный 17",
"operationTime": "неизвестно"
},
{
@ -315,6 +349,7 @@
],
"link": "https://ozon.ru/point/535056",
"name": "Донецк, улица Коммунаров, 38",
"address": "Донецк, улица Коммунаров, 38",
"operationTime": "неизвестно"
},
{
@ -324,6 +359,7 @@
],
"link": "https://ozon.ru/point/536823",
"name": "Донецк, ул. Артема 147б",
"address": "Донецк, ул. Артема 147б",
"operationTime": "неизвестно"
},
{
@ -333,6 +369,7 @@
],
"link": "https://ozon.ru/point/536826",
"name": "Донецк, ул. Независимости 16Д",
"address": "Донецк, ул. Независимости 16Д",
"operationTime": "неизвестно"
},
{
@ -342,6 +379,7 @@
],
"link": "https://ozon.ru/point/536825",
"name": "Торез, Пионерская 1",
"address": "Торез, Пионерская 1",
"operationTime": "неизвестно"
},
{
@ -351,6 +389,7 @@
],
"link": "https://ozon.ru/point/536839",
"name": "г. Зугрес, ул. Рыночная 1",
"address": "г. Зугрес, ул. Рыночная 1",
"operationTime": "неизвестно"
},
{
@ -360,6 +399,7 @@
],
"link": "https://ozon.ru/point/536623",
"name": "г. Харцызск, ул. Шалимова 14Б",
"address": "г. Харцызск, ул. Шалимова 14Б",
"operationTime": "неизвестно"
},
{
@ -369,6 +409,7 @@
],
"link": "https://ozon.ru/point/536824",
"name": "Горловка, проспект Победы 55",
"address": "Горловка, проспект Победы 55",
"operationTime": "неизвестно"
},
{
@ -378,6 +419,7 @@
],
"link": "https://ozon.ru/point/536836",
"name": "Горловка, ул. 40 лет Украины 9",
"address": "Горловка, ул. 40 лет Украины 9",
"operationTime": "неизвестно"
},
{
@ -387,6 +429,7 @@
],
"link": "https://ozon.ru/point/536827",
"name": "Горловка, ул. Бессонова 29а",
"address": "Горловка, ул. Бессонова 29а",
"operationTime": "неизвестно"
},
{
@ -396,6 +439,7 @@
],
"link": "https://ozon.ru/point/536832",
"name": "Горловка, ул. Гагарина 32",
"address": "Горловка, ул. Гагарина 32",
"operationTime": "неизвестно"
},
{
@ -405,6 +449,7 @@
],
"link": "https://ozon.ru/point/536666",
"name": "Енакиево, 50 лет Октября 58а",
"address": "Енакиево, 50 лет Октября 58а",
"operationTime": "неизвестно"
},
{
@ -414,6 +459,7 @@
],
"link": "https://ozon.ru/point/536668",
"name": "Енакиево, ул. Ленина 91а",
"address": "Енакиево, ул. Ленина 91а",
"operationTime": "неизвестно"
},
{
@ -423,6 +469,7 @@
],
"link": "https://ozon.ru/point/536829",
"name": "Мариуполь, пр. Металлургов 97",
"address": "Мариуполь, пр. Металлургов 97",
"operationTime": "неизвестно"
},
{
@ -432,6 +479,7 @@
],
"link": "https://ozon.ru/point/536828",
"name": "Мариуполь, пр. Металлургов 227",
"address": "Мариуполь, пр. Металлургов 227",
"operationTime": "неизвестно"
},
{
@ -441,6 +489,7 @@
],
"link": "https://ozon.ru/point/536673",
"name": "Мариуполь, пр. Победы 89",
"address": "Мариуполь, пр. Победы 89",
"operationTime": "неизвестно"
},
{
@ -450,6 +499,7 @@
],
"link": "https://ozon.ru/point/536837",
"name": "Мариуполь, ул. Киевская 51",
"address": "Мариуполь, ул. Киевская 51",
"operationTime": "неизвестно"
},
{
@ -459,6 +509,7 @@
],
"link": "https://ozon.ru/point/536835",
"name": "Мариуполь, ул. Февральская 44а",
"address": "Мариуполь, ул. Февральская 44а",
"operationTime": "неизвестно"
},
{
@ -468,6 +519,7 @@
],
"link": "https://ozon.ru/point/536831",
"name": "Мариуполь, Казанцева 22а",
"address": "Мариуполь, Казанцева 22а",
"operationTime": "неизвестно"
},
{
@ -477,6 +529,7 @@
],
"link": "https://ozon.ru/point/536838",
"name": "Донецк, ул. Речная 24Б",
"address": "Донецк, ул. Речная 24Б",
"operationTime": "неизвестно"
},
{
@ -486,6 +539,7 @@
],
"link": "https://ozon.ru/point/536830",
"name": "Донецк, ул. Пилотная 28",
"address": "Донецк, ул. Пилотная 28",
"operationTime": "неизвестно"
},
{
@ -495,6 +549,7 @@
],
"link": "https://ozon.ru/point/536833",
"name": "Донецк, бул. Шевченко, 66",
"address": "Донецк, бул. Шевченко, 66",
"operationTime": "неизвестно"
}
]

View File

@ -13,9 +13,10 @@
<a href="#" id="popup-closer" class="ol-popup-closer"></a>
<div id="popup-content">
<p id="popup-name"></p>
<p id="popup-address"></p>
<a id="popup-address"></a>
<p>График работы: <span id="popup-operation-time">неизвестно</span></p>
<p>
Отсканируйте QR или нажмите на него
<a id="popup-link" href="">
<canvas id="popup-canvas"></canvas>
</a>

View File

@ -5,7 +5,7 @@
47.948376
],
"name": "ПВЗ-03 Ляшенко",
"address": "Донецк-2, ул. Ляшенко 1а",
"address": "Донецк, Ляшенко 1а",
"link": "https://ozon.ru/point/538097",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -17,7 +17,7 @@
47.988652
],
"name": "ПВЗ-08 Первомайская",
"address": "Донецк-6, ул. Первомайская",
"address": "Донецк, ул. Первомайская (АС Центр)",
"link": "https://ozon.ru/point/538186",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -29,7 +29,7 @@
48.006233
],
"name": "ПВЗ-10 Театральный",
"address": "Донецк-7, ул. Университетская 26",
"address": "Донецк, ул. Университетская 26",
"link": "https://ozon.ru/point/524639",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -41,7 +41,7 @@
48.009223
],
"name": "ПВЗ-11 Шевченко",
"address": "Донецк-8, бул. Шевченко 77",
"address": "Донецк, бул. Шевченко 77",
"link": "https://ozon.ru/point/536833",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -65,7 +65,7 @@
48.000825
],
"name": "ПВЗ-14 Ильича",
"address": "Донецк-10, пр. Ильича 27",
"address": "Донецк, пр. Ильича 27",
"link": "https://ozon.ru/point/538179",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -77,7 +77,7 @@
47.9534
],
"name": "ПВЗ-15 Боссе",
"address": "Донецк-11, ул. Речная 24б",
"address": "Донецк, ул. Речная 24б",
"link": "https://ozon.ru/point/536838",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -113,7 +113,7 @@
48.008645
],
"name": "ПВЗ-21 Крытый",
"address": "Донецк-15, ул. 50-летия СССР 150",
"address": "Донецк, ул. 50-летия СССР 150",
"link": "https://ozon.ru/point/533314",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -125,7 +125,7 @@
47.99136
],
"name": "ПВЗ-22 Независимости",
"address": "Донецк-16, ул. Независимости 16д",
"address": "Донецк, ул. Независимости 16д",
"link": "https://ozon.ru/point/536826",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -137,7 +137,7 @@
47.975167
],
"name": "ПВЗ-23 Раздольная",
"address": "Донецк-17, ул. Раздольная 6",
"address": "Донецк, ул. Раздольная 6",
"link": "https://ozon.ru/point/533348",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -149,7 +149,7 @@
47.975021
],
"name": "ПВЗ-24 Соловки",
"address": "Донецк-18, ул. Пилотная 28",
"address": "Донецк, ул. Пилотная 28",
"link": "https://ozon.ru/point/536830",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -161,7 +161,7 @@
48.098354
],
"name": "ПВЗ-25 МК3 Черемушки",
"address": "Макеевка-3, квартал Северный 17",
"address": "Макеевка, квартал Северный 17",
"link": "https://ozon.ru/point/534957",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -173,7 +173,7 @@
48.008783
],
"name": "ПВЗ-26 Шахтостроителей",
"address": "Донецк-19, бул. Шахтостроителей 20",
"address": "Донецк, бул. Шахтостроителей 20",
"link": "https://ozon.ru/point/534949",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -185,7 +185,7 @@
48.022137
],
"name": "ПВЗ-27 Детский Мир",
"address": "Донецк-20, ул. Артема 147а",
"address": "Донецк, ул. Артема 147а",
"link": "https://ozon.ru/point/536823",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -197,7 +197,7 @@
47.991033
],
"name": "ПВЗ-30 Постышева",
"address": "Донецк-23, ул. Постышева 43",
"address": "Донецк, ул. Постышева 43",
"link": "https://ozon.ru/point/538183",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -209,7 +209,7 @@
47.99713
],
"name": "ПВЗ-33 Пирамида",
"address": "Донецк-25, ул. 50-летия СССР 100",
"address": "Донецк, ул. 50-летия СССР 100",
"link": "https://ozon.ru/point/533329",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -221,7 +221,7 @@
48.044231
],
"name": "ПВЗ-34 Киевский",
"address": "Донецк-26, пр. Киевский 24",
"address": "Донецк, пр. Киевский 24",
"link": "https://ozon.ru/point/538182",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -233,7 +233,7 @@
48.028202
],
"name": "ПВЗ-35 Топаз",
"address": "Донецк-27, ул. Куйбышева 169б",
"address": "Донецк, ул. Куйбышева 169б",
"link": "https://ozon.ru/point/538096",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -245,7 +245,7 @@
48.100112
],
"name": "ПВЗ-36 МК-4 Даки",
"address": "Макеевка-4, ул. 50 лет Образования СССР 24а",
"address": "Макеевка, ул. 50 лет Образования СССР 24а",
"link": "https://ozon.ru/point/538184",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -257,7 +257,7 @@
48.034874
],
"name": "ПВЗ-38 Волна",
"address": "Донецк-29, ул. Куйбышева 217Б",
"address": "Донецк, ул. Куйбышева 217Б",
"link": "https://ozon.ru/point/533332",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -269,7 +269,7 @@
47.970189
],
"name": "ПВЗ-39 Семашко",
"address": "Донецк-30, ул. Коммунаров 38 (Семашко)",
"address": "Донецк, ул. Коммунаров 38",
"link": "https://ozon.ru/point/535056",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -281,7 +281,7 @@
47.945246
],
"name": "ПВЗ-40 Островского20",
"address": "Донецк-31, ул. Островского 20 (Текстильщик)",
"address": "Донецк, ул. Островского 20",
"link": "https://ozon.ru/point/533345",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -293,7 +293,7 @@
48.004304
],
"name": "ПВЗ-43 Гурова 22",
"address": "Донецк-34, пр. Гурова 22",
"address": "Донецк, пр. Гурова 22",
"link": "https://ozon.ru/point/538094",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -305,7 +305,7 @@
47.95952
],
"name": "ПВЗ-44 Кольцова15",
"address": "Донецк-35, ул. Кольцова 15",
"address": "Донецк, ул. Кольцова 15",
"link": "https://ozon.ru/point/538095",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://login.woyag.ru/map",
@ -388,9 +388,9 @@
37.845475,
47.994778
],
"name": "ПВЗ г.Донецк, ул. Харитонова, 3",
"name": "ПВЗ г.Донецк, ул.Харитонова, 3",
"address": "г.Донецк, ул.Харитонова, 3",
"link": "https://ozon.ru/point/517058",
"address": "г.Донецк, ул. Харитонова, 3",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -400,9 +400,9 @@
37.790642,
47.988073
],
"name": "ПВЗ Донецк, пр-т. Ленинский, 4",
"name": "ПВЗ г.Донецк, пр.Ленинский, 4",
"address": "г.Донецк, пр.Ленинский, 4",
"link": "https://ozon.ru/point/517054",
"address": "г.Донецк, пр-т. Ленинский, 4",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -412,9 +412,9 @@
37.694046,
47.949874
],
"name": "ПВЗ: Донецк, ул. Петровского, 111в",
"name": "ПВЗ г.Донецк, ул.Петровского, 111в",
"address": "г.Донецк, ул.Петровского, 111в",
"link": "https://ozon.ru/point/517053",
"address": "г.Донецк, ул. Петровского, 111в",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -424,9 +424,9 @@
37.798637,
48.009
],
"name": "ПВЗ г.Донецк, ул. Университетская, 34",
"name": "ПВЗ г.Донецк, ул.Университетская, 34",
"address": "г.Донецк, ул.Университетская, 34",
"link": "https://ozon.ru/point/514822",
"address": "г.Донецк, ул. Университетская, 34",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -436,9 +436,9 @@
37.899868,
47.991365
],
"name": "ПВЗ г.Донецк, ул. Полоцкая, 9",
"name": "ПВЗ г.Донецк, ул.Полоцкая, 9",
"address": "г.Донецк, ул.Полоцкая, 9",
"link": "https://ozon.ru/point/517056",
"address": "г.Донецк, ул. Полоцкая, 9",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -448,9 +448,9 @@
37.551447,
47.106867
],
"name": "ПВЗ г.Мариуполь, пр. Металлургов, 94",
"name": "ПВЗ г.Мариуполь, пр.Металлургов, 94",
"address": "г.Мариуполь, пр.Металлургов, 94",
"link": "https://ozon.ru/point/516734",
"address": "г.Мариуполь, пр. Металлургов, 94",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -460,9 +460,9 @@
37.960468,
48.041197
],
"name": "ПВЗ г. Макеевка, ул.Рябцева, 1",
"name": "ПВЗ г.Макеевка, ул.Рябцева, 1",
"address": "г.Макеевка, ул.Рябцева, 1",
"link": "https://ozon.ru/point/517062",
"address": "г.Макеевка, ул. Рябцева, 1",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -472,9 +472,9 @@
37.781488,
48.03651
],
"name": "ПВЗ г.Донецк, ул. Артема, 148а",
"name": "ПВЗ г.Донецк, ул.Артема, 148а",
"address": "г.Донецк, ул.Артема, 148а",
"link": "https://ozon.ru/point/517055",
"address": "г.Донецк, ул. Артема, 148а",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -484,9 +484,9 @@
37.7964,
48.00381
],
"name": "ПВЗ Донецк, пр-т. Гурова, 7",
"name": "ПВЗ г.Донецк, пр.Гурова, 7",
"address": "г.Донецк, пр.Гурова, 7",
"link": "https://ozon.ru/point/517061",
"address": "г.Донецк, пр-т. Гурова, 7",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -496,9 +496,9 @@
37.807934,
48.014371
],
"name": "ПВЗ г.Донецк, ул. Челюскинцев, 167",
"name": "ПВЗ г.Донецк, ул.Челюскинцев, 167",
"address": "г.Донецк, ул.Челюскинцев, 167",
"link": "https://ozon.ru/point/517059",
"address": "г.Донецк, ул. Челюскинцев, 167",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -508,9 +508,9 @@
37.835405,
48.002471
],
"name": "ПВЗ г.Донецк, пр. Ильича, 32",
"name": "ПВЗ г.Донецк, пр.Ильича, 32",
"address": "г.Донецк, пр.Ильича, 32",
"link": "https://ozon.ru/point/514844",
"address": "г.Донецк, пр. Ильича, 32",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -520,9 +520,9 @@
38.026077,
48.045442
],
"name": "ПВЗ г.Макеевка, пр. Генерала Данилова, 71б",
"name": "ПВЗ г.Макеевка, пр.Генерала Данилова, 71б",
"address": "г.Макеевка, пр.Генерала Данилова, 71б",
"link": "https://ozon.ru/point/534902",
"address": "г.Макеевка, пр. Генерала Данилова, 71б",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -532,9 +532,9 @@
37.778362,
47.978513
],
"name": "ПВЗ г.Донецк, ул. Воровского, 9",
"name": "ПВЗ г. Донецк, ул.Воровского, 9",
"address": "г. Донецк, ул.Воровского, 9",
"link": "https://ozon.ru/point/534899",
"address": "г.Донецк, ул. Воровского, 9",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -544,9 +544,21 @@
38.084391,
47.11915
],
"name": "ПВЗ г.Новоазовск, ул. Ленина, 48",
"name": "ПВЗ г.Новоазовск, ул.Ленина, 48",
"address": "г.Новоазовск, ул.Ленина, 48",
"link": "https://ozon.ru/point/533305",
"address": "г.Новоазовск, ул. Ленина, 48",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
"coordinates": [
37.795933,
48.021495
],
"name": "ПВЗ г.Донецк, ул.Университетская, 76",
"address": "г.Донецк, ул.Университетская, 76",
"link": "https://ozon.ru/point/538086",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -556,9 +568,21 @@
37.907342,
47.977482
],
"name": "ПВЗ г.Донецк, ул. Прожекторная, 3",
"name": "ПВЗ г.Донецк, ул.Прожекторная, 3",
"address": "г.Донецк, ул.Прожекторная, 3",
"link": "https://ozon.ru/point/533308",
"address": "г.Донецк, ул. Прожекторная, 3",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
},
{
"coordinates": [
37.864259,
48.009494
],
"name": "ПВЗ г.Донецк, бул.Шевченко, 129",
"address": "г.Донецк, бул.Шевченко, 129",
"link": "https://ozon.ru/point/538180",
"operationTime": "пн-вс с 9:00 до 17:45",
"source": "https://t.me/ozon_wb_dpr/627",
"provider": "ПВЗ ДНР"
@ -666,6 +690,7 @@
],
"link": "https://ozon.ru/point/518290",
"name": "г. Мариуполь ул. Урицкого 63",
"address": "г. Мариуполь ул. Урицкого 63",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -677,6 +702,7 @@
],
"link": "https://ozon.ru/point/524695",
"name": "Макеевка, улица Ленина, 50А",
"address": "Макеевка, улица Ленина, 50А",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -688,6 +714,7 @@
],
"link": "https://ozon.ru/point/533299",
"name": "Макеевка, улица Ленина, 108",
"address": "Макеевка, улица Ленина, 108",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -699,6 +726,7 @@
],
"link": "https://ozon.ru/point/536829",
"name": "Мариуполь, пр. Металлургов 97",
"address": "Мариуполь, пр. Металлургов 97",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -710,6 +738,7 @@
],
"link": "https://ozon.ru/point/536828",
"name": "Мариуполь, пр. Металлургов 227",
"address": "Мариуполь, пр. Металлургов 227",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -721,6 +750,7 @@
],
"link": "https://ozon.ru/point/536673",
"name": "Мариуполь, пр. Победы 89",
"address": "Мариуполь, пр. Победы 89",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -732,6 +762,7 @@
],
"link": "https://ozon.ru/point/536837",
"name": "Мариуполь, ул. Киевская 51",
"address": "Мариуполь, ул. Киевская 51",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -743,6 +774,7 @@
],
"link": "https://ozon.ru/point/536835",
"name": "Мариуполь, ул. Февральская 44а",
"address": "Мариуполь, ул. Февральская 44а",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"
@ -754,6 +786,7 @@
],
"link": "https://ozon.ru/point/536831",
"name": "Мариуполь, Казанцева 22а",
"address": "Мариуполь, Казанцева 22а",
"operationTime": "неизвестно",
"source": "https://dostavka.7telecom.ru",
"provider": "7dostavka"

9
package-lock.json generated
View File

@ -8,6 +8,7 @@
"name": "free-ozon-dpr",
"version": "0.0.0",
"dependencies": {
"fastest-levenshtein": "^1.0.16",
"jsdom": "^24.1.0",
"modern-async": "^2.0.0",
"node-fetch": "^3.3.2",
@ -918,6 +919,14 @@
"@esbuild/win32-x64": "0.20.2"
}
},
"node_modules/fastest-levenshtein": {
"version": "1.0.16",
"resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz",
"integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==",
"engines": {
"node": ">= 4.9.1"
}
},
"node_modules/fetch-blob": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",

View File

@ -14,6 +14,7 @@
"vite-plugin-webfont-dl": "^3.9.4"
},
"dependencies": {
"fastest-levenshtein": "^1.0.16",
"jsdom": "^24.1.0",
"modern-async": "^2.0.0",
"node-fetch": "^3.3.2",

View File

@ -2,6 +2,7 @@ import map from "./map";
import { Overlay } from "ol";
import QRCode from "qrcode";
import { el } from "./utils";
import { toLonLat } from "ol/proj";
const container = el("popup");
const closer = el("popup-closer");
@ -38,8 +39,11 @@ function onClick(event) {
const coordinates = feature.getGeometry().getCoordinates();
const [lon, lat] = toLonLat(coordinates);
popupName.textContent = feature.get("name");
popupAddress.textContent = feature.get("address");
popupAddress.href = `https://yandex.ru/maps/?whatshere[point]=${lon},${lat}&whatshere[zoom]=18&l=map`
popupLink.href = feature.get("link");
popupSource.href = feature.get("source");
popupOperationTime.textContent = feature.get("operationTime") ?? "неизвестно";

View File

@ -1,7 +1,8 @@
import fs from "node:fs/promises";
import { asyncMap } from "modern-async";
import { JSDOM } from "jsdom";
import { getFinalURL } from "./utils.js";
import ozonWbDpr from "./update/ozon-wb-dpr.js";
import sevenDostavka from "./update/sevenDostavka.js";
async function woyag() {
const apiResponse = await fetch("https://login.woyag.ru/ajax/pvz-list");
@ -19,7 +20,7 @@ async function woyag() {
return {
coordinates: [parseFloat(point["geo_lng"]), parseFloat(point["geo_lat"])],
name: point.name,
address: point.fullname,
address: point.address,
link,
operationTime: "пн-вс с 9:00 до 17:45",
};
@ -39,51 +40,10 @@ async function woyag() {
);
}
const linkRegexp = new RegExp(/https:\/\/ozon\.ru\/point\/\d+/);
async function sevenDostavka() {
const res = await fetch("https://dostavka.7telecom.ru");
const htmlText = await res.text();
const dom = new JSDOM(htmlText);
const document = dom.window.document;
const scripts = document.querySelectorAll("script");
for (let script of scripts) {
if (script.textContent.includes("ДОБАВИТЬ ПУНКТ ВЫДАЧИ В ПРИЛОЖЕНИЕ")) {
let x = script.textContent.split("[\n{\n").pop().split("\n},\n]")[0];
if (x) {
const points = new Function(`return [{${x}}]`)();
fs.writeFile(
"data/99_sevenDostavka.json",
JSON.stringify(
{
name: "7dostavka",
source: "https://dostavka.7telecom.ru",
points: points.map((point) => ({
coordinates: [
parseFloat(point["lng"]),
parseFloat(point["lat"]),
],
link: linkRegexp.exec(point.descr)[0],
name: point.title,
operationTime: "неизвестно",
})),
},
undefined,
4
)
);
}
}
}
}
async function main() {
await woyag();
await sevenDostavka();
await ozonWbDpr();
}
main();

0
scripts/update/index.js Normal file
View File

View File

@ -0,0 +1,124 @@
import { distance } from "fastest-levenshtein";
import { getFinalURL, getTelegramMessage } from "../utils.js";
import { JSDOM } from "jsdom";
import { asyncMap } from "modern-async";
import fs from "node:fs/promises";
const MAIN_URL = "https://t.me/ozon_wb_dpr/627";
const QR_FOR_PVZ_STRING = "QR для ПВЗ";
const closestObj = (str, arr, key) => {
let min_distance = Infinity;
let min_index = 0;
for (let i = 0; i < arr.length; i++) {
const dist = distance(str, arr[i][key]);
if (dist < min_distance) {
min_distance = dist;
min_index = i;
}
}
return arr[min_index];
};
async function getPVZFromPost(post) {
const message = await getTelegramMessage(post);
const dom = new JSDOM(message.text);
const document = dom.window.document;
const linkElement = document.querySelector(
'a[href*="vk.cc"],a[href*="ozon.ru"]'
);
const link = await getFinalURL(linkElement["href"]).then((u) => {
const final = new URL(u);
final.search = "";
return final.toString();
});
return link;
}
async function getFromTelegram() {
const message = await getTelegramMessage(MAIN_URL);
const dom = new JSDOM(message.text);
const document = dom.window.document;
const links = document.querySelectorAll("a");
return (
await asyncMap(links, async (link) => {
const textContent = link.textContent;
if (textContent.startsWith(QR_FOR_PVZ_STRING)) {
const address = textContent.replace(QR_FOR_PVZ_STRING, "").trim();
let postLink = link["href"];
// TEMP FIX
if (address === "г.Донецк, ул.Университетская, 76") {
postLink = "https://t.me/ozon_wb_dpr/774";
}
return {
name: `ПВЗ ${address}`,
address,
link: await getPVZFromPost(postLink),
operationTime: "пн-вс с 9:00 до 17:45",
};
}
})
).filter(Boolean);
}
async function getFromSite() {
const res = await fetch("https://ozon-wb-dpr.ru/");
const html = await res.text();
const dom = new JSDOM(html);
const document = dom.window.document;
const scripts = document.querySelectorAll("script");
for (let script of scripts) {
if (script.textContent.includes('descr: "Бесплатный озон')) {
let x = script.textContent.split("[\n{\n").pop().split("\n},\n]")[0];
if (x) {
const points = new Function(`return [{${x}}]`)();
return points;
}
}
}
}
async function ozonWbDpr() {
const telegramPoints = await getFromTelegram();
let points = (await getFromSite()).map((point) => ({
coordinates: [parseFloat(point["lng"]), parseFloat(point["lat"])],
name: point.title,
}));
points = points.map((point) => {
const obj = closestObj(point.name, telegramPoints, "name");
return {
coordinates: point.coordinates,
...obj,
};
});
await fs.writeFile(
"data/03_ozon-wb-dpr.json",
JSON.stringify(
{
name: "ПВЗ ДНР",
source: MAIN_URL,
points,
},
undefined,
4
)
);
}
export default ozonWbDpr;

View File

@ -0,0 +1,47 @@
import fs from "node:fs/promises";
import { JSDOM } from "jsdom";
const linkRegexp = new RegExp(/https:\/\/ozon\.ru\/point\/\d+/);
async function sevenDostavka() {
const res = await fetch("https://dostavka.7telecom.ru");
const htmlText = await res.text();
const dom = new JSDOM(htmlText);
const document = dom.window.document;
const scripts = document.querySelectorAll("script");
for (let script of scripts) {
if (script.textContent.includes("ДОБАВИТЬ ПУНКТ ВЫДАЧИ В ПРИЛОЖЕНИЕ")) {
let x = script.textContent.split("[\n{\n").pop().split("\n},\n]")[0];
if (x) {
const points = new Function(`return [{${x}}]`)();
fs.writeFile(
"data/99_sevenDostavka.json",
JSON.stringify(
{
name: "7dostavka",
source: "https://dostavka.7telecom.ru",
points: points.map((point) => ({
coordinates: [
parseFloat(point["lng"]),
parseFloat(point["lat"]),
],
link: linkRegexp.exec(point.descr)[0],
name: point.title,
address: point.title,
operationTime: "неизвестно",
})),
},
undefined,
4
)
);
}
}
}
}
export default sevenDostavka;

View File

@ -1,23 +1,65 @@
import { JSDOM } from "jsdom";
async function resolveVKcc(url) {
const response = await fetch(url);
const text = await response.text();
const match = new RegExp(/value=["']([^"']+)["']/).exec(text);
if (match && match.length > 1) {
return match[1];
} else {
return;
}
}
export async function getFinalURL(url) {
let response = await fetch(url, {
if (url?.startsWith('https://vk.cc')) {
url = await resolveVKcc(url);
}
if (!url) {
return;
}
let response = await fetch(url, {
method: "HEAD",
redirect: "manual",
});
while (
response.status >= 300 &&
response.status < 400 &&
response.headers.get("location") &&
!url.startsWith('https://ozon.ru/point/')
) {
url = response.headers.get("location");
if (!url.startsWith("http")) {
const baseUrl = new URL(response.url);
url = `${baseUrl.protocol}//${baseUrl.host}${url}`;
}
response = await fetch(url, {
method: "HEAD",
redirect: "manual",
});
while (
response.status >= 300 &&
response.status < 400 &&
response.headers.get("location") &&
new URL(url).hostname !== 'ozon.ru'
) {
url = response.headers.get("location");
if (!url.startsWith("http")) {
const baseUrl = new URL(response.url);
url = `${baseUrl.protocol}//${baseUrl.host}${url}`;
}
response = await fetch(url, {
method: "HEAD",
redirect: "manual",
});
}
return url;
}
}
return url;
}
export async function getTelegramMessage(input) {
const url = new URL(input);
url.search = "?embed=1&mode=tme";
const res = await fetch(url);
const htmlText = await res.text();
const dom = new JSDOM(htmlText);
const document = dom.window.document;
const message = document.querySelector(".tgme_widget_message");
return {
text: message.querySelector("div.tgme_widget_message_text.js-message_text")
.innerHTML,
};
}