2017-12-04 6 views
8

मेरे पास एक ऐसी स्क्रिप्ट है जो Google कस्टम सर्च एपीआई का उपयोग करती है, जो कई परिणाम पृष्ठों के माध्यम से फिर से चलती है।Google कस्टम सर्च एपीआई शुरू = 100 कारण त्रुटि 400

https://www.googleapis.com/customsearch/v1?key=[[KEY]]&num=10&hl=en&start=0&cx=[[CX]]&q=%22bank%22&sort=date&googlehost=www.google.com 

https://www.googleapis.com/customsearch/v1?key=[[KEY]]&num=10&hl=en&start=10&cx=[[CX]]&q=%22bank%22&sort=date&googlehost=www.google.com 

https://www.googleapis.com/customsearch/v1?key=[[KEY]]&num=10&hl=en&start=20&cx=[[CX]]&q=%22bank%22&sort=date&googlehost=www.google.com 

उपरोक्त सभी उदाहरणों में, मुझे उचित प्रतिक्रिया मिलती है। क्वेरी प्रतिक्रिया का दावा है कि खोज में 17, 9 00 परिणाम हैं। स्क्रिप्ट शुरू = 100 तक पहुँच जाता है, तथापि:

https://www.googleapis.com/customsearch/v1?key=[[KEY]]&num=10&hl=en&start=100&cx=[[CX]]&q=%22bank%22&sort=date&googlehost=www.google.com 

मैं प्राप्त निम्नलिखित प्रतिक्रिया (इस JSON एक PHP वस्तु में तब्दील प्रतिक्रिया है): इस तथ्य के बावजूद

stdClass Object (
     [error] => stdClass Object 
      (
       [errors] => Array 
        (
         [0] => stdClass Object 
          (
           [domain] => global 
           [reason] => invalid 
           [message] => Invalid Value 
          ) 
        ) 
       [code] => 400 
       [message] => Invalid Value 
      )) 

यह है कि परिणाम मैं शुरू में प्राप्त = 90 का दावा है कि अगले पृष्ठ मौजूद है:

"nextPage": [ 
    { 
    "title": "Google Custom Search - \"bank\"", 
    "totalResults": "17900", 
    "searchTerms": "\"bank\"", 
    "count": 10, 
    "startIndex": 100, 
    "inputEncoding": "utf8", 
    "outputEncoding": "utf8", 
    "safe": "off", 
    "cx": "[[CX VALUE]]", 
    "sort": "date", 
    "googleHost": "www.google.com", 
    "hl": "en" 
    } 
    ] 

एपीआई के साथ चारों ओर खेलने कि इस अमान्य मान त्रुटि दिखाई देती है वास्तव में जब रों चलता तीखा = 92। इसके अलावा, यह सटीक पृष्ठ है जहां यह त्रुटि प्रत्येक कीवर्ड खोज के लिए दिखाई देती है। इस मुद्दे के साथ किसी भी मदद की सराहना की जाएगी। क्या ऐसा इसलिए है क्योंकि यह Google कस्टम खोज का एक मुफ्त संस्करण है?

उत्तर

8

यह जानकारी ढूंढना आसान नहीं है, और मैंने पाया कि यह google.com पर केवल एक ही स्थान पर आधिकारिक तौर पर उल्लेख किया गया है।

नोट:: मैं nextPage प्रतिक्रिया तत्व का वर्णन the Custom Search JSON API docs में एक पंक्ति पाया यह API पहले 100 परिणाम केवल अप करने के लिए देता है।

इसका कोई उल्लेख नहीं है कि यह केवल मुफ्त एपीआई तक सीमित है। मुझे यह भी पुष्टि करने वाली उपयोगकर्ता रिपोर्टें मिलीं कि बिलिंग के लिए साइन अप करने पर भी सीमा लागू होती है, उदाहरण के लिए this related SO question और the linked blog post देखें।

OTOH the 100 queries/day limit (के रूप में परिणाम के लिए विरोध की सीमा आप देख रहे हैं) अच्छी तरह से प्रलेखित है, और कैसे है कि हर जगह बायपास करने के बारे में जानकारी (बेशक, बिलिंग के लिए साइन अप करने के द्वारा) है।

संबंधित मुद्दे