mirror of
https://github.com/bellingcat/vk-url-scraper.git
synced 2026-06-12 05:18:35 +03:00
fix datetime issue
This commit is contained in:
@@ -11,7 +11,7 @@ vks = None
|
||||
|
||||
|
||||
def test_login_fail():
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
with pytest.raises(Exception):
|
||||
VkScraper("invalid", "combination")
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ def test_scrape_wall_url_with_text_only():
|
||||
res[0]["text"]
|
||||
== "[https://vk.com/wall-1_394596|Ранее] мы писали о жизненном цикле версий: vk.com/dev/constant_version_updates. Например, от поддержки версии API 5.50 должны были отказаться 1 сентября прошлого года, а от версии 5.80 — 14 октября. \n\nОбстоятельства сложились иначе — время отказаться от старых версий пришло только сейчас.\n\nС 19 августа 2021 года закончится срок жизни версий ниже 5.41.\nС 26 августа 2021 года перестанут поддерживаться версии ниже 5.61.\nСо 2 сентября 2021 года прекратится поддержка версий ниже 5.81.\n\nПожалуйста, успейте подготовиться к изменениям и убедиться, что в ваших приложениях ничего не сломается. Напомним, что с повышением версии у запросов может измениться формат ответов. Обо всех таких изменениях мы пишем [https://vk.com/dev/versions|здесь]."
|
||||
)
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2021, 8, 6, 13, 32, 26))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2021, 8, 6, 11, 32, 26))
|
||||
assert len(res[0]["attachments"]) == 0
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ def test_scrape_wall_url_with_one_photo():
|
||||
res[0]["text"]
|
||||
== "Делимся расписанием конкурса [https://vk.com/wall-1_399468|«Код Петербурга»]. Все важные этапы — на одной схеме \n\nЕсли участвуете, обязательно сохраните себе. Так будет удобнее планировать работу над проектом, и вы точно не упустите лучший момент для отправки сервиса на модерацию."
|
||||
)
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 8, 13, 42))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 8, 11, 42))
|
||||
assert len(res[0]["attachments"]) == 1
|
||||
assert len(res[0]["attachments"].keys()) == 1
|
||||
assert list(res[0]["attachments"].keys()) == ["photo"]
|
||||
@@ -58,7 +58,7 @@ def test_scrape_wall_url_with_photos():
|
||||
res[0]["text"]
|
||||
== "Хабаровск\nАллея героев\nПомолимся об укокоении воинов:\nАлександра, Игоря, Эдуарда, \nДионисия, Евгения, Александра, Артемия, Иннокентия, Андрея."
|
||||
)
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 15, 12, 37, 24))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 15, 10, 37, 24))
|
||||
assert len(res[0]["payload"]) == 16
|
||||
assert len(res[0]["attachments"].keys()) == 1
|
||||
assert list(res[0]["attachments"].keys()) == ["photo"]
|
||||
@@ -70,7 +70,7 @@ def test_scrape_wall_url_with_photos_inner_videos_and_links_with_inner_photos():
|
||||
assert len(res) == 1
|
||||
assert res[0]["id"] == "wall-17315087_74182"
|
||||
assert res[0]["text"] == ""
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 3, 24, 12, 1, 9))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 3, 24, 11, 1, 9))
|
||||
assert len(res[0]["payload"]) == 15
|
||||
assert len(res[0]["attachments"].keys()) == 3
|
||||
assert_equal_lists(list(res[0]["attachments"].keys()), ["photo", "link", "video"])
|
||||
@@ -87,7 +87,7 @@ def test_scrape_photo_only():
|
||||
res[0]["text"]
|
||||
== "Делимся расписанием конкурса [https://vk.com/wall-1_399468|«Код Петербурга»]. Все важные этапы — на одной схеме \n\nЕсли участвуете, обязательно сохраните себе. Так будет удобнее планировать работу над проектом, и вы точно не упустите лучший момент для отправки сервиса на модерацию."
|
||||
)
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 7, 11, 43))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 6, 7, 9, 43))
|
||||
assert len(res[0]["payload"]) == 15
|
||||
assert len(res[0]["attachments"].keys()) == 1
|
||||
assert list(res[0]["attachments"].keys()) == ["photo"]
|
||||
@@ -98,7 +98,7 @@ def test_scrape_video_only():
|
||||
res = vks.scrape("https://vk.com/video38556806_456251917?list=ba2b77043648ff3789")
|
||||
assert len(res) == 1
|
||||
assert res[0]["id"] == "video38556806_456251917"
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 3, 24, 6, 42, 38))
|
||||
assert str(res[0]["datetime"]) == str(datetime.datetime(2022, 3, 24, 5, 42, 38))
|
||||
assert len(res[0]["payload"]) == 31
|
||||
assert len(res[0]["attachments"].keys()) == 1
|
||||
assert list(res[0]["attachments"].keys()) == ["video"]
|
||||
|
||||
@@ -127,7 +127,7 @@ class VkScraper:
|
||||
{
|
||||
"id": f'wall{item["owner_id"]}_{item["id"]}',
|
||||
"text": item.get("text", ""),
|
||||
"datetime": datetime.fromtimestamp(item.get("date", 0)),
|
||||
"datetime": datetime.utcfromtimestamp(item.get("date", 0)),
|
||||
"attachments": dict(attachments),
|
||||
"payload": item,
|
||||
}
|
||||
@@ -161,7 +161,7 @@ class VkScraper:
|
||||
{
|
||||
"id": f'video{item["owner_id"]}_{item["id"]}',
|
||||
"text": item.get("title", ""),
|
||||
"datetime": datetime.fromtimestamp(item.get("date", 0)),
|
||||
"datetime": datetime.utcfromtimestamp(item.get("date", 0)),
|
||||
"attachments": {
|
||||
"video": [item.get("player", "")],
|
||||
},
|
||||
@@ -194,7 +194,7 @@ class VkScraper:
|
||||
{
|
||||
"id": f'photo{item["owner_id"]}_{item["id"]}',
|
||||
"text": item.get("text", ""),
|
||||
"datetime": datetime.fromtimestamp(item.get("date", 0)),
|
||||
"datetime": datetime.utcfromtimestamp(item.get("date", 0)),
|
||||
"attachments": {"photo": [item["orig_photo"]["url"]]},
|
||||
"payload": item,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user