как пинговать feedburner в aws лямбда (python)? - PullRequest
0 голосов
/ 03 августа 2020
import requests    
UserAgentString = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A'}
FeedPingUrl = 'stores already pinged Url through https://feedburner.google.com/fb/a/ping'

pingFeedburner = requests.get(FeedPingUrl,UserAgentString)

Выше код, который я использую, но канал обновляется только тогда, когда я запускаю код на компьютере, но каналы не обновляются, когда тот же код выполняется внутри aws лямбда-функции.

Переменная FeedPingUrl содержит URL-адрес, который используется для обновления указанного c Feed.

Вот как это объясняется на веб-сайте https://feedburner.google.com/fb/a/ping

Подсказка: Добавьте эту страницу в закладки после нажатия кнопки «Ping FeedBurner» и используйте эту закладку как удобный способ обновить ленту из меню закладок! Эта форма использует базовый Ping FeedBurner и расширенный Ping XML -RP C API.

Я также пробовал использовать строку агента пользователя, но безрезультатно.

Aws лямбда-функция работает успешно, единственное, что похоже на то, что ping feedburner не работает.

Обновление 1: я должен был упомянуть, что этот код является лишь частью гораздо более крупного кода, который все вместе работает на AWS лямбда-функции. Я установил тайм-аут до 10 секунд. Но выполнение полного кода занимает 2-3 мс, как указано в лямбда-журналах.

Обновление 2: я пробовал запускать ping как отдельную лямбда-функцию и основной код в другой лямбда-функции. функция ping занимает 500-600 мс, но поскольку полный код, который включает ping и основной код, занял 2-3 мс, как указано в обновлении 1. Это очень неясно.

Обновление 3: я использовал запланированный триггер 2-х минутного интервала для лямбда-функции

...