0

I am trying to consume ContextualWeb News API. The endpoint is described here:

https://rapidapi.com/contextualwebsearch/api/web-search

Here is the request snippet in Python as described in RapidAPI:

response = unirest.get("https://contextualwebsearch-websearch-v1.p.rapidapi.com/api/Search/NewsSearchAPI?autoCorrect=true&pageNumber=1&pageSize=10&q=Taylor+Swift&safeSearch=false",
  headers={
    "X-RapidAPI-Host": "contextualwebsearch-websearch-v1.p.rapidapi.com",
    "X-RapidAPI-Key": "XXXXXX"
  }
)

How do I send the request and parse the response? Can you provide a complete code example for the News API?

Grokify
  • 15,092
  • 6
  • 60
  • 81

1 Answers1

1

use the python version 3.X for below code.Below is the complete example example where I am passing string Taylor Swift and parsing response...Let me know if you stuck anywhere

import requests  # install from: http://docs.python-requests.org/en/master/

# Replace the following string value with your valid X-RapidAPI-Key.
Your_X_RapidAPI_Key = "XXXXXXXXXXXXXXXXXXX";

# The query parameters: (update according to your search query)
q = "Taylor%20Swift"  # the search query
pageNumber = 1  # the number of requested page
pageSize = 10  # the size of a page
autoCorrect = True  # autoCorrectspelling
safeSearch = False  # filter results for adult content

response = requests.get(
    "https://contextualwebsearch-websearch-v1.p.rapidapi.com/api/Search/NewsSearchAPI?q={}&pageNumber={}&pageSize={}&autocorrect={}&safeSearch={}".format(
        q, pageNumber, pageSize, autoCorrect, safeSearch),
    headers={
        "X-RapidAPI-Key": Your_X_RapidAPI_Key
    }
).json()

# Get the numer of items returned
totalCount = response["totalCount"];

# Get the list of most frequent searches related to the input search query
relatedSearch = response["relatedSearch"]

# Go over each resulting item
for webPage in response["value"]:
    # Get the web page metadata
    url = webPage["url"]
    title = webPage["title"]
    description = webPage["description"]
    keywords = webPage["keywords"]
    provider = webPage["provider"]["name"]
    datePublished = webPage["datePublished"]

    # Get the web page image (if exists)
    imageUrl = webPage["image"]["url"]
    imageHeight = webPage["image"]["height"]
    imageWidth = webPage["image"]["width"]

    thumbnail = webPage["image"]["thumbnail"]
    thumbnailHeight = webPage["image"]["thumbna`enter code here`ilHeight"]

# An example: Output the webpage url, title and published date:
print("Url: %s. Title: %s. Published Date:%s." % (url, title, datePublished))
  • Works like a charm! Thanks. Does the same code also apply to ContextualWeb Web Search API and Image API? Should I just change the endpoint name? – Roi Krakovski Apr 17 '19 at 07:29