一个用python做的完整项目_我从一个小项目学习Python编程的全过程(二)
在(一)中的時候我們分析了如何獲取所有人無憂幣的統計情況,接下來開始學著寫代碼了:
首先第一步我們得把第一個頁面的源代碼:#coding:utf-8
import urllib
url = 'http://home.51cto.com/index.php?s=/space/1'
content = urllib.urlopen(url).read()
print content
通過簡單的幾行代碼我們就能夠得到這個頁面的源程序代碼了,打印出來看一下,如圖:
第一行代碼,看到#號我們知道這是一個注釋,但是這個注釋很特殊,他的作用是指定了utf-8的字符集。由于我們的代碼中會涉及到中文,為了能使Python編譯器正確識別中文字符,所以需要在代碼頂部添加這樣一段特殊的注釋。
雖然#這個符號在python中表示注釋,其實如果用pydev或者別的什么IDE來編寫程序的時候,如果開頭不聲明保存編碼格式,會默認使用ASKII碼保存,那么代碼中有中文就會有問題,即使你的中文是在注釋里面。
關于注釋的#號我們多提一些:
如果是在linux/unix系統中時,我們看別人的代碼總有這樣的開頭:#!/usr/bin/python
#Filename:XXX.py
在這兩段代碼中它被稱作 組織行 ----源文件的頭兩個字符是#!,后面跟著一個程序。這行告訴你的Linux/Unix當執行你的程序的時候,它應該運行哪個解釋器。
如果需要在代碼中使用中文注釋,必須在Python文件的最前面加上如我們所寫的注釋說明:#coding: UTF-8
如果要輸出中文,需要在文件最上面加上:# coding: gbk
關于中文處理的問題我發現只要我們使用國語的廣大同胞起初都是一個很頭痛的問題,等遇到關于中文亂碼問題時,我再做一個系統的談論關于文本編碼的知識。
第二行代碼就是同過import是用來導入相應的模塊。模塊其實就是一些函數和類的集合文件,類似于C中的include頭文件,這里就是導入urllib模塊。
第三行我們想要通過urllib模塊中的urlopen(url [,data])函數打開一個HTML文檔,這行我們提供該文檔的URL地址。函數urlopen不僅可以打開位于遠程web服務器上的文件,而 且可以打開一個本地文件,并返回一個類似文件的對象,我們可以通過該對象從HTML文檔中讀出數據。
第四行一旦打開了HTML文檔,我們就可以像使用常規文件一樣使用read([nbytes]),readline()和readlines()函數來對文件進行讀操作。若要讀取整個HTML文檔的內容的話,您可以使用read()函數,該函數將文件內容作為字符串返回。
第五行輸出。
想用文字解釋清楚每一行看似很簡單的代碼真困難!!!!感覺用多少語言都無法表示清楚一樣,不過這樣學習到的東西真的很多
下邊一節來看看如何能把得到的源代碼中提取出我們需要的信息:
我們要從大量的數據中找到無憂幣這一塊的區域并且把無憂幣的數量單獨的提取出來,我們要用到find()函數,find函數()能夠查找到所要查找的位置并通過切片得到。
總結
以上是生活随笔為你收集整理的一个用python做的完整项目_我从一个小项目学习Python编程的全过程(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ctypes python_Python
- 下一篇: python输出日志到文件_【已解决】P