您的位置:首页 > 编程语言 > Python开发

【python学习.油价和美元汇率查询】

2014-12-07 12:23 204 查看
这周的编程任务不难,找到的都是静态网页,用正则表达式查询下就可以了,就是转换码的时候费了我好大劲。

原网页的代码如下:





__author__ = 'Administrator'
# -*- coding: UTF-8 -*-
import urllib2
import re
import time
import MySQLdb

def oil():
    conn=MySQLdb.connect(host='localhost',user='cjw',passwd='123456',port=3306)
    cur=conn.cursor()
    conn.select_db('python1')

    url="http://www.bitauto.com/youjia/suzhou/?WT.srch=1"
    req=urllib2.Request(url)
    response=urllib2.urlopen(req)
    page=response.read()

    req1=re.compile('class="todayPrice"><strong>(.*?)</strong>(.*?)</span>',re.X)
    req2=re.compile('class="oilNum">(.*?)</span>',re.X)
    match=req1.findall(page)
    match2=req2.findall(page)
    cur.execute('insert into week6oil values(%s)',match[0][0])
    conn.commit()
    cur.close()
    conn.close()
    a=0
    for j in match2:
        j=j.decode("utf-8")
        print j
        c= match[a][1].decode('utf-8')
        print match[a][0]+c
        a=a+1

def money():
    conn=MySQLdb.connect(host='localhost',user='cjw',passwd='123456',port=3306)
    cur=conn.cursor()
    conn.select_db('python1')
    cur.execute('create table week6money4(huilv varchar(20)) ')
    url='http://huilv.911cha.com/USDCNY.html'
    req=urllib2.Request(url)
    response=urllib2.urlopen(req)
    page=response.read()
    req1=re.compile('<p>(.*?)</p>')
    req1=re.compile('<p>美元对人民币汇率:(.*?)</p>')
    match=req1.findall(page)
    match2=req1.findall(page)

    cur.execute('insert into week6money4 values(%s)',match2)
    conn.commit()
    cur.close()
    conn.close()
    for i in match:
        i=i.decode("utf-8")
        print i

try:
 while(True):
     oil()
     money()

     time.sleep(3600)
except MySQLdb.Error,e:
     print "Mysql Error %d: %s" % (e.args[0], e.args[1])
然后这是结果





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: