zoukankan      html  css  js  c++  java
  • 获取bing每日图片

    http://global.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=en-US

    其中idx表示倒数第几张图片0就是今天的1就是昨天的几就是几天前的每日图片

    返回XML简单明了

    用python获取返回的XML并用正则表达式找出图片的URL,用PyMySQL将其插入数据库供日后使用

    我服务器上的代码如下

     1 from urllib import request
     2 import re
     3 import requests
     4 import pymysql
     5 
     6 
     7 def insertPic(picName):
     8     connect = pymysql.connect(host='localhost', user='jeff', password='xxxx', db='jeff',charset='utf8')
     9     cur = connect.cursor()
    10     sql = 'INSERT bingPic(name) VALUES(%s)'
    11     cur.execute(sql, (picName))
    12     connect.commit()
    13     connect.close()
    14 
    15 def getXML(url):
    16     page = request.urlopen(url)
    17     return page.read().decode('utf-8')
    18 
    19 
    20 def saveImage(directory, imageURL, imageName):
    21     image = open(directory + imageName, 'wb')
    22     image.write(requests.get(imageURL).content)
    23     image.close()
    24 
    25 
    26 globalBing = 'http://global.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1&mkt=en-US'
    27 chinaBing = 'http://www.bing.com/HPImageArchive.aspx?format=xml&idx=0&n=1'
    28 path = '/home/jeff/web/resources/pic/bing/'
    29 
    30 xmlGlobal = getXML(globalBing)
    31 
    32 p = re.compile("<url>.*</url>")
    33 result = re.findall(p, xmlGlobal)
    34 picUrl = 'http://global.bing.com' + result[0][5:-6]
    35 picName = picUrl.split('/')[-1]
    36 
    37 saveImage(path, picUrl, picName)
    38 insertPic(picName)
    39 print(picName)
  • 相关阅读:
    规划
    学习规划
    续约
    每日一记
    每日记录
    《代码大全》第八章 防御式编程
    《代码大全》第七章
    平安夜
    每日一记
    培养良好的生活习惯
  • 原文地址:https://www.cnblogs.com/makejeffer/p/5608225.html
Copyright © 2011-2022 走看看