Я пытаюсь запросить https://www.googleapis.com/pagespeedonline/v1/runPagespeed?url=[http://www.my-website.dk/]&key=[my-key], используя urlfetch из движка приложения, но он не работает.
Когда я получаю к нему доступ и жестко кодирую my-url в запросе так: https://www.googleapis.com/pagespeedonline/v1/runPagespeed?url=http://www.my-website.dk/&key=[my-key] он работает нормально, но когда я использую urlfetch.fetch ("https://www.googleapis.com/pagespeedonline/v1/runPagespeed?url=%s&key=[my-key]"," http://www.my -website.dk "), он не работает Я тоже попробовал:
page_content = urlfetch.fetch(
url="https://www.googleapis.com/pagespeedonline/v1/runPagespeed",
payload=params,
method=urlfetch.GET
)
и затем обслуживаем параметры в полезной нагрузке следующим образом:
params = urllib.urlencode({
"url": page.link,
"key": "[my-key]"
})
но результат тот же, он не работает, и сервис выдает мне HTTP-код состояния 400. Я также попытался добавить urlfetch.fetch (u ("http: // ...", page.link), но результат такой же.
Я отредактировал код, основываясь на ответе systempuntoout, если любой должен столкнуться с той же проблемой:
params = urllib.urlencode({
"url": page.link,
"key": "AIzaSyAFpm6W_OmjQl33JC98mAPkvrdGmrR0i4Y"
})
page_content = urlfetch.fetch("https://www.googleapis.com/pagespeedonline/v1/runPagespeed?%s" % params)