استخدام واجهة برمجة التطبيقات للفهرسة

نظرة عامة

يمكنك استخدام واجهة برمجة التطبيقات للفهرسة لإبلاغ Google بالصفحات المطلوب تعديلها أو إزالتها من فهرس Google. يجب أن تحدّد الطلبات موقع صفحة الويب. ويمكنك أيضًا التعرُّف على حالة الإشعارات التي أرسلتها إلى Google. لا يمكن حاليًا استخدام واجهة برمجة التطبيقات للفهرسة إلا للزحف إلى صفحات تحتوي على إعلانات وظائف أو بينات منظَّمة لبث مباشر.

عند إرسال طلب إلى واجهة برمجة التطبيقات للفهرسة، يُرجى تحديد موقع لصفحة ويب مستقلة لإبلاغ محرك البحث Google بالزحف إلى هذه الصفحة أو إزالتها من الفهرس.

توضح الأمثلة التالية الإجراءات التي يمكن تنفيذها باستخدام واجهة برمجة التطبيقات للفهرسة:

تعديل عنوان URL
POST https://indexing.googleapis.com/v3/urlNotifications:publish
{
  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_UPDATED"
}
إزالة عنوان URL
POST https://indexing.googleapis.com/v3/urlNotifications:publish
{
  "url": "https://careers.google.com/jobs/google/technical-writer",
  "type": "URL_DELETED"
}
التعرُّف على حالة الإشعار
GET https://indexing.googleapis.com/v3/urlNotifications/metadata

المعلَمات

يوضح الجدول التالي الحقول اللازمة لكل الطرق (تعديل عنوان URL وإزالته):

الحقول
url

مطلوب

الموقع المؤهَّل بالكامل للعنصر الذي تريد تعديله أو إزالته

type

مطلوب

نوع الإشعار الذي أرسلته

الإرشادات

يتم تطبيق الإرشادات التالية على طلبات تعديل عنوان URL أو إزالته.

  • في كل عمليات الاستدعاء الموجَّهة إلى https://indexing.googleapis.com/v3/UrlNotifications:publish، يجب استخدام "application / json" باعتباره رأس Content-Type.
  • يمكن إرسال عنوان URL واحد فقط في نص طلب التعديل، أو دمج ما يصل إلى 100 طلب في دُفعة واحدة، على النحو الموضح في إرسال طلبات الفهرسة على دُفعات.
  • نص الطلب في هذه الأمثلة هو قيمة المتغيّر content المستخدَم في أمثلة رمز الدخول.

تعديل عنوان URL

لإرسال إشعار إلى Google بالزحف إلى عنوان URL جديد أو بأنه تمّ تعديل المحتوى المتوفر على عنوان URL الذي سبق إرساله، اتّبع الخطوات أدناه:

  1. إرسال طلب POST إلى نقطة النهاية التالية:
    POST https://indexing.googleapis.com/v3/urlNotifications:publish
  2. تحديد موقع الصفحة، في نص الطلب، باستخدام البنية التالية:
    {
      "url": "content_location",
      "type": "URL_UPDATED"
    }
  3. يستخدم Google الاستجابة HTTP 200 للرد على طلبات البيانات الناجحة من واجهة برمجة التطبيقات للفهرسة. ويُقصد بالاستجابة HTTP 200 أن Google قد يحاول إعادة الزحف إلى عنوان URL هذا قريبًا. ويشتمل نص الاستجابة على كائن UrlNotificationMetadata والذي تتطابق حقوله مع تلك التي يعرضها طلب حالة الإشعار.
  4. إذا لم تتلقّ استجابة HTTP 200، راجِع الأخطاء الخاصة بواجهة برمجة التطبيقات للفهرسة.
  5. إذا تم تغيير محتويات الصفحة، يمكنك إرسال إشعار تعديل آخر، وسيؤدي ذلك إلى إعادة زحف محرك البحث Google إلى الصفحة.
  6. قد تحتاج إلى حصة أكبر من الحصة التلقائية. لعرض حصتك الحالية وطلب حصة أكبر، انتقِل إلى الحصة.

إزالة عنوان URL

بعد حذف أحد الصفحات من الخوادم، يجب إرسال إشعار إلى Google لكي نزيل الصفحة من الفهرس، وحتى لا تتم محاولة الزحف مرة أخرى إلى عنوان URL الخاص بهذه الصفحة. قبل طلب الإزالة، عليك إزالة الصفحة من خادمك ويجب أن يعرض عنوان URL رمز الحالة 404 أو 410.

لطلب الإزالة من الفهرس، اتّبِع الخطوات التالية:

  1. إرسال طلب POST إلى نقطة النهاية التالية:
    POST https://indexing.googleapis.com/v3/urlNotifications:publish
  2. تحديد عنوان URL الذي تريد إزالته في نص الطلب باستخدام البنية التالية:
    {
      "url": "content_location",
      "type": "URL_DELETED"
    }

    مثل:

    {
      "url": "https://careers.google.com/jobs/google/technical-writer",
      "type": "URL_DELETED"
    }
  3. يستخدم Google الاستجابة HTTP 200 للرد على طلبات البيانات الناجحة من واجهة برمجة التطبيقات للفهرسة. تعني الاستجابة HTTP 200 أنه يمكن لمحرِّك البحث Google إزالة عنوان URL هذا من الفهرس. يشتمل نص الاستجابة على كائن UrlNotificationMetadata والذي تتطابق حقوله مع تلك التي يعرضها طلب حالة الإشعار.
  4. إذا لم تتلقّ استجابة HTTP 200، راجِع الأخطاء الخاصة بواجهة برمجة التطبيقات للفهرسة.
  5. قد تحتاج إلى حصة أكبر من الحصة التلقائية. لعرض حصتك الحالية وطلب حصة أكبر، انتقِل إلى الحصة.

التعرُّف على حالة الإشعار

يمكنك الاطّلاع على آخر مرة تلقّى فيها محرك البحث Google كل نوع من الإشعارات الخاصة بعنوان URL معين. ولا يبلغك طلب GET بفهرسة أحد عناوين URL أو إزالته بواسطة Google، وإنما يعرض فقط ما إذا كنت قد أرسلت طلبك بنجاح.

للتعرُّف على حالة الإشعار، اتّبِع الخطوات التالية:

  1. إرسال طلب GET لنقطة النهاية التالية. يجب أن تكون عناوين URL التي تحدّدها عناوين URL مشفّرة. على سبيل المثال، استخدِم %3A محل : (النقطتان) و%2F محل / (الشرطة المائلة للأمام).
    GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=url-encoded_url

    مثل:

    GET https://indexing.googleapis.com/v3/urlNotifications/metadata?url=https%3A%2F%2Fcareers.google.com%2Fjobs%2Fgoogle%2Ftechnical-writer
    
  2. تستجيب واجهة برمجة التطبيقات للفهرسة للطلب باستخدام رسالة HTTP 200، مع بيانات أساسية تتضمن تفاصيل الإشعار. ويوضح المثال التالي نص استجابة تتضمن معلومات عن إشعار بالتعديل والحذف:
    {
      url: “http://foo.com“
      latest_update {
        type: “URL_UPDATED”
        notify_time: “2017-07-31T19:30:54.524457662Z”
      }
      latest_remove {
        type: “URL_DELETED”
        notify_time: “2017-08-31T19:30:54.524457662Z”
      }
    }
    
  3. إذا لم تتلقّ استجابة HTTP 200، راجِع الأخطاء الخاصة بواجهة برمجة التطبيقات للفهرسة.
  4. قد تحتاج إلى حصة أكبر من الحصة التلقائية. لعرض حصتك الحالية وطلب حصة أكبر، انتقِل إلى الحصة.

إرسال طلبات الفهرسة على دفعات

لتقليل عدد اتصالات HTTP التي يجب على العميل إجراؤها، يمكنك دمج ما يصل إلى 100 استدعاء لواجهة برمجة التطبيقات للفهرسة في طلب HTTP واحد. ويمكن تنفيذ ذلك في طلب متعدد الأجزاء يسمى "دفعة".

عند إرسال طلب مُجمّع إلى واجهة برمجة التطبيقات للفهرسة، يمكنك استخدام نقطة النهاية التالية:

https://indexing.googleapis.com/batch

يحتوي نص الطلب المجمّع على أجزاء متعددة. ويمثل كل جزء بحد ذاته طلب HTTP كامل، مع ما يخصه من فعل وعنوان URL ورؤوس ونص. لا يتجاوز حجم كل جزء من الطلب المجمّع 1 ميغابايت.

لتسهيل إرسال الطلبات المجمّعة، تدعم "مكتبات عميل واجهة برمجة التطبيقات من Google" وظائف التجميع. لمزيد من المعلومات عن التجميع باستخدام مكتبات العميل، يمكنك الاطّلاع على الصفحات الخاصة باللغات التالية:

إذا كنت تستخدم أمثلة التجميع الموضحة على هذه الصفحات، قد تحتاج إلى تعديل الترميز للتوافق مع متطلبات التنفيذ الموضحة في الحصول على رمز دخول.

يحتوي المثال التالي لنص رسالة الطلب المجمّع على إشعار بالتعديل وإشعار بالإزالة:

POST /batch HTTP/1.1
Host: indexing.googleapis.com
Content-Length: content_length
Content-Type: multipart/mixed; boundary="===============7330845974216740156=="
Authorization: Bearer oauth2_token

--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+2>

POST /v3/urlNotifications:publish [1]
Content-Type: application/json
accept: application/json
content-length: 58

{ "url": "http://example.com/jobs/42", "type": "URL_UPDATED" }
--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+1>

POST /v3/urlNotifications:publish [2]
Content-Type: application/json
accept: application/json
content-length: 75

{ "url": "http://example.com/widgets/1", "type": "URL_UPDATED" }
--===============7330845974216740156==
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: <b29c5de2-0db4-490b-b421-6a51b598bd22+3>

POST /v3/urlNotifications:publish [3]
Content-Type: application/json
accept: application/json
content-length: 58

{ "url": "http://example.com/jobs/43", "type": "URL_DELETED" }
--===============7330845974216740156==

لمزيد من المعلومات، راجِع إرسال الطلبات المجمّعة.

إرسال تعليقات حول...