Time of Update: 2016-06-16
1、首先找到一個線上成語網站2、查看網頁結構,定義正則式看一下要抓的成語的標籤有什麼特點,查看源碼,可以發現要抓的成語都在標籤中,如:安如磐石,成語事實上就是一個瞄文本,不同成語指向的連結不同,其實也就"/cy0/93.html"中的數字不同,所以正則式裡匹配兩次數字就行了,定義正則式 reg = "(.*?)"。3、上代碼吧複製代碼 代碼如下:#anthor jiqunpeng#time 20121124import urllibimport redef getHtml(url):
Time of Update: 2016-06-16
《hadoop權威指南》的天氣資料可以在ftp://ftp3.ncdc.noaa.gov/pub/data/noaa下載,在網上看到這個資料好開心,開啟ftp發現個問題,呀呀,這麼多檔案啊,我一個個去點另存新檔,得點到啥時候啊,迅雷應該有批量下載,只是我沒找到,估計是我瀏覽器把迅雷禁掉了,乾脆自己用python寫一個實現下載好了,網上早了一下,發現很簡單啊複製代碼 代碼如下:#!/usr/bin/python#-*- coding: utf-8 -*-from ftplib import
Time of Update: 2016-06-16
安裝環境:python版本2.7.5 ,win7系統安裝Djangohttps://www.djangoproject.com/download/ 官方下載Django-1.5.5.tar.gz1,解壓後(我的目錄是D:\myapp\Django-1.5.5)2,DOS命令到剛解壓後的Django-1.5.5目錄下執行命令 python setup.py install ,
Time of Update: 2016-06-16
用Python寫指令碼也有一段時間了,經常操作資料庫(MySQL),現在就整理下對各類資料庫的操作,如後面有新的參數會補進來,慢慢完善。一,python 操作 MySQL:詳情見:【apt-get install python-mysqldb】複製代碼 代碼如下:#!/bin/env python# -*- encoding: utf-8 -*-#---------------------------------------------------------------------------
Time of Update: 2016-06-16
1 、建立一個django項目使用django-admin.py startproject MyDjangoSite 參考這裡2、建立視圖from django.http import HttpResponsedef hello(request): return HttpResponse("我的第一個簡單的python django項目。")3、修改urls.py我們為urlpatterns加上一行: (r‘^hello/$', hello),
Time of Update: 2016-06-16
資料庫遷移(A -> B),需要把使用者也遷移過去,而使用者表(mysql.user)有上百個使用者。有2種方法進行快速遷移:1,在同版本的條件下,直接備份A伺服器的mysql資料庫,還原到B伺服器。2,要是不同版本的資料(5.1 ->
Time of Update: 2016-06-16
直接上代碼:複製代碼 代碼如下:# -*- coding: utf-8 -*- import Queue import threadingimport urllibimport urllib2import osdef down(url,n): print 'item '+str(n)+' start ' filename=urllib2.unquote(url).decode('utf8').split('/')[-1] urllib.urlretrieve(url,
Time of Update: 2016-06-16
1.1 os.system(command)在一個子shell中運行command命令,並返回command命令執行完畢後的退出狀態。這實際上是使用C標準庫函數system()實現的。這個函數在執行command命令時需要重新開啟一個終端,並且無法儲存command命令的執行結果。1.2
Time of Update: 2016-06-16
1.列表推導式書寫形式: [運算式 for 變數 in 列表] 或者 [運算式 for 變數 in 列表 if 條件]2.舉例說明:複製代碼 代碼如下:#!/usr/bin/python# -*- coding: utf-8 -*-li = [1,2,3,4,5,6,7,8,9]print [x**2 for x in li]print [x**2 for x in li if x>5]print dict([(x,x*10) for x in li])print [ (x, y)
Time of Update: 2016-06-16
直接上代碼:複製代碼 代碼如下:# -*- coding: cp936 -*-import urllibimport osprint 'Download data......'url = 'http://cn.bing.com'urlFile = urllib.urlopen(url)data = urlFile.read()urlFile.close()data = data.decode('utf-8')pre = 'g_img={url:\''index1 = data.find(pre)
Time of Update: 2016-06-16
1.演算法:(設尋找的數組期間為array[low, high])(1)確定該期間的中間位置K(2)將尋找的值T與array[k]比較。若相等,尋找成功返回此位置;否則確定新的尋找地區,繼續二分尋找。地區確定如下:a.array[k]>T 由數組的有序性可知array[k,k+1,……,high]>T;故新的區間為array[low,……,K-1]b.array[k]2.python代碼:複製代碼 代碼如下:#!/usr/bin/python# -*- coding: utf-8 -*-def
Time of Update: 2016-06-16
1、下載安裝MySQLdb類庫http://www.djangoproject.com/r/python-mysql/2、修改settings.py 配置資料屬性複製代碼 代碼如下:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME':
Time of Update: 2016-06-16
最近在做天氣業務的延時監控,就是每隔一個小時檢查一次天氣資料是否變化,三次不變化就警示。由於頁面給的資料的以json格式的,所以如何解析頁面上的資料,從而獲得我們想要的欄位是我們首先考慮的問題。一般來說,當我們從一個網頁上拿下來資料,就是一個字串,比如:複製代碼 代碼如下:url_data = urllib2.urlopen(url).readline()當我們這樣得到頁面資料,url_data是全部頁面顯示一個json字串,那麼我們如何將這個字串轉變為字典格式:time =
Time of Update: 2016-06-16
一、 演算法描述:1.先從數列中取出一個數作為基準數。2.分區過程,將比這個數大的數全放到它的右邊,小於或等於它的數全放到它的左邊。3.再對左右區間重複第二步,直到各區間只有一個數。 二、python快速排序代碼複製代碼 代碼如下:#!/usr/bin/python# -*- coding: utf-8 -*-def sub_sort(array,low,high): key = array[low] while low while low = key:
Time of Update: 2016-06-16
複製代碼 代碼如下:import retext='V101_renow.Android.2.2.Normal.1.Alpha.apk?IMSI=460029353813976&MOBILE=&OLD_VERSION=renow.Android.2.1.Normal.1.Alpha&CHANNELID=3'm = re.search(r"\w+_(renow.*)\.(apk|vir|ipa)\?IMSI=(\d+)&MOBILE=&OLD_VERSION=(.*)&CHANNELID=(.*)"
Time of Update: 2016-06-16
首先你要確保你機器上面安裝了python,其次,你還要確保你上面安裝了Django。接下來,才能進入到搭建第一個Django應用程式很簡單的操作,即在windows終端輸入代碼:複製代碼 代碼如下:1 django-admin.py startproject mysite即可,如:我是在我電腦的 E:\Python33\python_workspace 目錄下面建立項目的目錄是你自己定的運行命令:複製代碼 代碼如下:django-admin.py startproject
Time of Update: 2016-06-16
1.演算法:設有一組關鍵字{ K 1 , K 2 ,…, K n };排序開始就認為 K 1 是一個有序序列;讓 K 2 插入上述表長為 1 的有序序列,使之成為一個表長為 2 的有序序列;然後讓 K 3 插入上述表長為 2 的有序序列,使之成為一個表長為 3 的有序序列;依次類推,最後讓 K n 插入上述表長為 n-1 的有序序列,得一個表長為 n 的有序序列。2.python插入排序代碼複製代碼 代碼如下:def insertion_sort(list2): for i in
Time of Update: 2016-06-16
1.演算法:對於一組關鍵字{K1,K2,…,Kn}, 首先從K1,K2,…,Kn中選擇最小值,假如它是 Kz,則將Kz與 K1對換;然後從K2,K3,… ,Kn中選擇最小值 Kz,再將Kz與K2對換。如此進行選擇和調換n-2趟,第(n-1)趟,從Kn-1、Kn中選擇最小值 Kz將Kz與Kn-1對換,最後剩下的就是該序列中的最大值,一個由小到大的有序序列就這樣形成。2.python 選擇排序代碼:複製代碼 代碼如下:def selection_sort(list2): for i in
Time of Update: 2016-06-16
1.演算法描述:(1)共迴圈 n-1 次(2)每次迴圈中,如果 前面的數大於後面的數,就交換(3)設定一個標籤,如果上次沒有交換,就說明這個是已經好了的。2.python冒泡排序代碼複製代碼 代碼如下:#!/usr/bin/python# -*- coding: utf-8 -*-def bubble(l): flag = True for i in range(len(l)-1, 0, -1): if flag: flag = False
Time of Update: 2016-06-16
複製代碼 代碼如下:import socketimport Queueimport threadingdef worker(): while True: i = q.get() conn=i[0] addr=i[1] while 1: sms=conn.recv(1024) if sms!="": print "Message from ("+str(addr[