午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

Python調用百度API

 妙行蓮花 2016-05-10

來源:城樓聽雪-簡書

作者:jking54

鏈接:http://www.jianshu.com/p/ee856b499ebc(點擊尾部閱讀原文前往)


紙上得來終覺淺,絕知此事要躬行


今天稍微看了一下百度的API,試了一下如何調用那些API,發(fā)現其實是很容易的。


步驟:




1、訪問百度API Store;

2、找到想要調用的API,這里我嘗試的是百度美女圖片




請求實例:


# -*- coding: utf-8 -*-

import sys, urllib, urllib2, json

url = 'http://apis.baidu.com/txapi/mvtp/meinv?num=10'

req = urllib2.Request(url)

req.add_header('apikey', '您自己的apikey')

resp = urllib2.urlopen(req)

content = resp.read()

if(content):

   print(content)


3、按照說明,自己稍作修改即可。


我的代碼:(比較亂,請諒解)

首先引入庫,這里需要用到requests,json


import requests

import json


然后寫api地址,參數表


url = 'http://apis.baidu.com/txapi/mvtp/meinv'

headers = {'apikey':'*******(這里用你自己的apikey)'}

params = {'num':'10'}


發(fā)出請求,得到響應


r = requests.get(url,params = params,headers=headers)

r = r.json()


定義一個存圖片的函數


def saveImage(imgUrl,imgName= 'default.jpg'):

  response = requests.get(imgUrl,stream = True)

  image = response.content

  dst = 'f:baidu_img'

  path = dst+imgName

  print 'save the file:'+path+'n'

  with open(path,'wb') as img:

    img.write(image)

  img.close()


開始獲取圖片地址,保存


def run():

  for line in r['newslist']:

   title = line['title']

   picUrl = line['picUrl']

   saveImage(picUrl,imgName=title+'.jpg')

run()


運行結果:



對于其他的API的調用,原理都一樣,按照要求發(fā)出請求,然后對響應文本進行解析,得到自己想要的數據。


下面再給一個api調用的實例代碼,也是調用的圖片(用有圖片的例子來寫,結果比較明顯)


\# -*- coding:utf-8 -*-

import requests

url_1 = 'http://www./tnfs/api/list'

\#url_2 = 'http://www./tnfs/api/classify'

src_header = 'http://tnfs./image'

headers = {'apikey':'*******(這里用你自己的apikey)'}

params_1 = {

    'page':3,

    'rows':20,

    'id':6      #需根據classify結果才能知道

}

r = requests.get(url_1)

r = r.json()

\#保存圖片到本地路徑

def saveImage(imgUrl,imgName= 'default.jpg'):

    response = requests.get(imgUrl,stream = True)

    image = response.content

    dst = 'f:\baidu_img\'

    path = dst+imgName

    print 'save the file:'+path+'\n'

    with open(path,'wb') as img:

        img.write(image)

    img.close()

\#開始

def run():

    for line in r['tngou']:

        title = line['title']

        img = line['img']

        src_path = src_header+img

        saveImage(src_path,title+'.jpg')

run()


現在,是不是覺得很簡單?當然,你也可以直接用requests,而不用調用API,對響應文本用正則表達式匹配,得到想要的數據。



●本文編號51,以后想閱讀這篇文章直接輸入51即可。

●輸入m可以獲取到文章目錄



    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多