как отправить файлы Sitemap с помощью API seach console, когда домен имеет вид s c -домен: xxx.com - PullRequest
1 голос
/ 03 февраля 2020

Когда я использую API отправки карты сайта консоли поиска Google (задокументировано здесь: https://developers.google.com/webmaster-tools/search-console-api-original/v3/sitemaps/submit) для отправки файлов Sitemap, я попробовал следующие 3 варианта:

к сожалению, когда я запускаю его, я получите это сообщение об ошибке:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "forbidden",
    "message": "User does not have sufficient permission for site 'http://XXXXX.com/'. See also: https://support.google.com/webmasters/answer/2451999."
   }
  ],
  "code": 403,
  "message": "User does not have sufficient permission for site 'http://XXXXX.com/'. See also: https://support.google.com/webmasters/answer/2451999."
 }
}

для http и https, эти варианты не работают, для s c -домен: он выходит из строя еще хуже.

, хотя Я авторизован на весь домен, почему-то я не авторизован для публикации карты сайта ??? для домена я авторизован? это не имеет смысла.

С другой стороны, получение списка карт сайта, для сайтов с http и https это работает, но для доменов s c это не удается.

I Попробовал интерактивно в консоли, без помощи. https://developers.google.com/webmaster-tools/search-console-api-original/v3/sitemaps/submit?apix_params=%7B%22siteUrl%22%3A%22xxxx.com%22%2C%22feedpath%22%3A%22https%3A%2F%2Fxxxx.com%2Fxxxx.xml%22%7D

Подробности среды
  • ОС: OSX
  • Python версия: Python 3.6.5
  • версия pip: pip 19.3.1
  • google-api-python-client версия: (1.7.11) (из PIP)
Шаги для воспроизведения
  1. Запустите этот код (согласно предоставленному примеру):
SCOPES = ['https://www.googleapis.com/auth/webmasters',
          'https://www.googleapis.com/auth/webmasters.readonly']
credentials = service_account.Credentials.from_service_account_file(
    SERVICE_ACCOUNT_FILE, scopes=SCOPES)
service = googleapiclient.discovery.build('webmasters', 'v3', credentials=credentials)

service.sitemaps().submit(siteUrl="sc-domain:example.com",feedpath="http://example.com/sitemap.xml").execute()
к сожалению, я получаю такой результат:
googleapiclient.errors.HttpError: <HttpError 500 when requesting https://www.googleapis.com/webmasters/v3/sites/sc-domain%XXXXX.com/sitemaps/https%3A%2F%XXXXX.com%2Fsomefile.xml? returned "">

<returned ""> совсем не очень полезное сообщение об ошибке вообще.

после возни с объектом, Я получил это:

>>> error.content
{
 "error": {
  "code": 500,
  "message": null
 }
}

Я должен сказать, что это довольно крипное c сообщение об ошибке, я не знаю, что делать.

Заранее спасибо за это.

Я спросил парней в Google https://github.com/googleapis/google-api-python-client/issues/820, но кто знает, читают ли они эти сообщения ...

...