如何通过html

时间:2019-04-01 03:26:37

标签: python html json api pagination

我有一个使用Google自定义搜索API的网页。我正在尝试实现html的下一页按钮,但是不确定如何在HTML端的下一页结果中实现json数据。

例如,我尝试过

</a> <a href="{{ next_page }}"> Next </a> 

但是显然,这是行不通的,因为它只是将用户重定向到一个URL,该URL实际上就是下一页的json数据。

这是我拥有的python

def search_page(request, type_filter = None):
  search_query = request.GET.get('q', '')
  response = requests.get("https://www.googleapis.com/customsearch/v1?key=APIkey&cx=cx&q=" + search_query)
  json = response.json()
  data = {}
  data['items'] = json['items']
  data['queries'] = json['queries']
  data['search_query'] = search_query 

  service = build("customsearch", "v1",
            developerKey="APIkey")

  res = service.cse().list(
     q=search_query,
     cx='cx',
     num=10, 
  ).execute() 

  next_response = service.cse().list(
     q=search_query,
     cx='cx',
     num=10,
     start=res['queries']['nextPage'][0]['startIndex'],
  ).execute() 

  data['next'] = next_response

  return render(request, 'search/search.html', data)

这是我的HTML。下一页在底部。

<dl>
    {% for item in items %}
      <dt>
  <a style="font-size: 18px" href=" {{ item.link }} ">{{ item.title }}</a> - <a href="?q={{ item.pagemap.metatags.0.author }} " style="font-size: 18px" class="author no-decoration"> {{ item.pagemap.metatags.0.author }} </a> 

      </dt>
      <dd>
    <p style="margin: 0.2cm 1cm 1cm 1cm; color:#595959"> {{ item.snippet }}  <a href="{{ item.link }}" class="author no-decoration"> (more) </a> </p> 
      </dd>
    {% empty %}
      <p>No results found.</p>
    {% endfor %}

  <h3> showing page {{ queries.request.0.startIndex }} of {{queries.request.0.count}}  </h3> </n>

  <h3> <a href=""> Previous </a> <a> | </a> <a href=""> Next </a> </h3>
  </dl>

我真的想找出下一页,因为我怀疑这会帮助我找出上一页,大声笑。

0 个答案:

没有答案