ส่งคืนแหล่งรูปภาพแรกจากรูปภาพ Google


10

มีวิธีดึงแหล่งรูปภาพแรกจากการค้นหาของ Google หรือไม่หากฉันมีข้อความค้นหา

ตัวอย่างเช่นถ้าใส่คือtomatoouput จะเป็นhttp://www.cksinfo.com/clipart/food/fruits/tomatoes/tomato.png

ขอบคุณ!

คำตอบ:


5

Google Custom Search APIมีรูปภาพอยู่ในขณะนี้ คุณถูก จำกัด 100 ข้อความค้นหา / วันก่อนการเรียกเก็บเงิน แต่เป็นวิธีเดียวที่ถูกต้องตามกฎหมายที่จะใช้ Google ในการค้นหาของคุณ

หากลิงก์ไปผิดทาง:

สไตล์การโทร

มีมากกว่าหนึ่งวิธีในการเรียกใช้ API:

ส่วนที่เหลือ

การโอนสถานะเป็นตัวแทนใน Google Custom Search API ค่อนข้างแตกต่างจาก REST แบบดั้งเดิม แทนที่จะให้การเข้าถึงทรัพยากร API ให้การเข้าถึงบริการ ดังนั้น API จึงให้ URI เดียวที่ทำหน้าที่เป็นจุดสิ้นสุดของบริการ

คุณเข้าถึงจุดสิ้นสุดของบริการ Google Custom Search API โดยใช้คำกริยา GET REST HTTP ดังที่อธิบายไว้ในการทำงานของ API คุณส่งผ่านรายละเอียดของคำขอค้นหาทั้งหมดเป็นพารามิเตอร์ข้อความค้นหา

รูปแบบเฉพาะสำหรับ URI ของ Google Custom Search API เดียวคือ:

https://www.googleapis.com/customsearch/v1?parameters

โดยที่พารามิเตอร์เป็นพารามิเตอร์ใด ๆ ที่จะนำไปใช้กับแบบสอบถาม ดูการทำงานกับผลลัพธ์การค้นหาและการอ้างอิงพารามิเตอร์เคียวรีในเอกสารการใช้ REST สำหรับรายละเอียด

นี่คือตัวอย่างของการทำงานใน Google Custom Search API ซึ่งค้นหา Custom Search Engine สำหรับการบรรยาย:

GET https://www.googleapis.com/customsearch/v1?key=INSERT-YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=lectures

REST จาก JavaScript

คุณสามารถเรียกใช้ Google Custom Search API โดยใช้ REST จาก JavaScript โดยใช้พารามิเตอร์การสอบถามการโทรกลับและฟังก์ชั่นการโทรกลับ สิ่งนี้ช่วยให้คุณสามารถเขียนแอปพลิเคชันที่มีข้อมูลสูงซึ่งแสดงข้อมูล Custom Search โดยไม่ต้องเขียนโค้ดด้านเซิร์ฟเวอร์ใด ๆ

ตัวอย่างต่อไปนี้ใช้วิธีการนี้เพื่อแสดงหน้าแรกของผลการค้นหาสำหรับมะเขือเทศแบบสอบถาม:

<html>
  <head>
    <title>JSON/Atom Custom Search API Example</title>
  </head>
  <body>
    <div id="content"></div>
    <script>
      function hndlr(response) {
      for (var i = 0; i < response.items.length; i++) {
        var item = response.items[i];
        // in production code, item.htmlTitle should have the HTML entities escaped.
        document.getElementById("content").innerHTML += "<br>" + item.htmlTitle;
      }
    }
    </script>
    <script src="https://www.googleapis.com/customsearch/v1?key=YOUR-KEY&cx=017576662512468239146:omuauf_lfve&q=tomato&callback=hndlr">
    </script>
  </body>
</html>

แน่นอนว่าคุณต้องอัปเดต src ของสคริปต์เพื่อรวมค่าของอินพุตที่คุณกำลังค้นหา


เราควรทิ้งคีย์ API ต่อสาธารณะในscriptURL หรือไม่ o_O
T.Todua

3

คุณสามารถใช้Google Image Search APIเพื่อทำสิ่งนี้ น่าเสียดายที่มีการลดจำนวนลงดังนั้นคุณอาจพบจำนวนข้อความค้นหาต่อวันที่คุณสามารถ จำกัด ได้ ฉันไม่แน่ใจว่ามี API ใหม่ที่จะแทนที่หรือไม่


ไม่มีการแทนที่และ API เฉพาะนี้อยู่ในรายการที่จะปิดลงอย่างแน่นอน (เมื่อเทียบกับเพิ่งเลิกโดยไม่มีกำหนดเวลาปิดเพิ่ม) ต่อโพสต์ "การทำความสะอาดสปริง" APIล่าสุดแม้ว่าจะมีแนวโน้มที่จะอยู่ใน ช่วงสามปีที่ผ่านมา (ดูหัวข้อ 1.3)
Su '

หืมมม แต่ฉันจะได้รับเนื้อหาของหน้าผลการค้นหาและแยกลิงก์รูปภาพแรกหรือบางอย่างได้ไหม มีวิธีแก้ปัญหาใด ๆ หรือไม่
3mpetri

คุณสามารถทำการค้นหาแล้วแยกวิเคราะห์ HTML เพื่อรับผลลัพธ์แรก เป็นไปได้อย่างแน่นอน มันอาจเป็นการละเมิด TOS ของ Google
John Conde
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.