Time of Update: 2017-01-19
說明:關於類的這部分,我參考了《Learning Python》一書的講解。建立類建立類的方法比較簡單,如下:複製代碼 代碼如下:class Person: 注意,類的名稱一般用大寫字母開頭,這是慣例。當然,如果故意不遵循此慣例,也未嘗不可,但是,會給別人閱讀乃至於自己以後閱讀帶來麻煩。既然大家都是靠右走的,你就別非要在路中間睡覺了。接下來,一般都要編寫建構函式,在寫這個函數之前,先解釋一下什麼是建構函式。複製代碼 代碼如下:class
Time of Update: 2017-01-19
在開始部分,請看官非常非常耐心地閱讀下面幾個枯燥的術語解釋,本來這不符合本教程的風格,但是,請看官諒解,因為列位將來一定要閱讀枯燥的東西的。這些枯燥的屬於解釋,均來自維基百科。1、問題空間問題空間是問題解決者對一個問題所達到的全部認識狀態,它是由問題解決者利用問題所包含的資訊和已貯存的資訊主動地構成的。一個問題一般有下面三個方面來定義: •初始狀態——一開始時的不完全的資訊或令人不滿意的狀況; •目標狀態——你希望獲得的資訊或狀態; R
Time of Update: 2017-01-19
關於函數的事情,總是說不完的,下面就羅列一些編寫函數的注意事項。特別聲明,這些事項不是我總結的,我是從一本名字為《Learning Python》的書裡面抄過來的,順便寫成了漢語,當然,是按照自己的視角翻譯的,裡面也夾雜了一些自己的觀點。看官也可以理解為源於《Learning
Time of Update: 2017-01-19
本文執行個體講述了python類繼承用法。分享給大家供大家參考。具體方法如下:#!/usr/bin/python# Filename: inherit.pyclass SchoolMember: '''Represents any school member.''' def __init__(self, name, age): self.name = name self.age = age print'(Initialized SchoolMember: %s)'%
Time of Update: 2017-01-19
網路爬蟲,是在網上進行資料抓取的程式,使用它能夠抓取特定網頁的HTML資料。雖然我們利用一些庫開發一個爬蟲程式,但是使用架構可以大大提高效率,縮短開發時間。Scrapy是一個使用Python編寫的,輕量級的,簡單輕巧,並且使用起來非常的方便。使用Scrapy可以很方便的完成網上資料的採集工作,它為我們完成了大量的工作,而不需要自己費大力氣去開發。首先先要回答一個問題。問:把網站裝進爬蟲裡,總共分幾步?答案很簡單,四步:建立項目
Time of Update: 2017-01-19
前面十章爬蟲筆記陸陸續續記錄了一些簡單的Python爬蟲知識,用來解決簡單的貼吧下載,績點運算自然不在話下。不過要想批量下載大量的內容,比如知乎的所有的問答,那便顯得遊刃不有餘了點。於是乎,爬蟲架構Scrapy就這樣出場了!Scrapy =
Time of Update: 2017-01-19
先來說一下我們學校的網站:http://jwxt.sdu.edu.cn:7777/zhxt_bks/zhxt_bks.html查詢成績需要登入,然後顯示各學科成績,但是只顯示成績而沒有績點,也就是加權平均分。顯然這樣手動計算績點是一件非常麻煩的事情。所以我們可以用python做一個爬蟲來解決這個問題。1.決戰前夜先來準備一下工具:HttpFox外掛程式。這是一款http協議分析外掛程式,分析頁面請求和響應的時間、內容、以及瀏覽器用到的COOKIE等。以我為例,安裝在Firefox上即可,效果如圖
Time of Update: 2017-01-19
1.下載pyinstaller並解壓(可以去官網下載最新版):https://github.com/pyinstaller/pyinstaller/2.下載pywin32並安裝(注意版本,我的是python2.7):https://pypi.python.org/pypi/pywin323.將專案檔放到pyinstaller檔案夾下面(我的是baidu.py):4.按住shift鍵右擊,在當前路徑開啟命令提示行,輸入以下內容(最後的是檔案名稱):python pyinstaller.py -F
Time of Update: 2017-01-19
百度貼吧的爬蟲製作和糗百的爬蟲製作原理基本相同,都是通過查看源碼扣出關鍵資料,然後將其儲存到本地txt檔案。項目內容:用Python寫的百度貼吧的網路爬蟲。使用方法:建立一個BugBaidu.py檔案,然後將代碼複製到裡面後,雙擊運行。程式功能:將貼吧中樓主發布的內容打包txt儲存到本地。原理解釋:首先,先瀏覽一下某一條貼吧,點擊只看樓主並點擊第二頁之後url發生了一點變化,變成了:http://tieba.baidu.com/p/2296712428?see_lz=1&pn=1可以看出來,se
Time of Update: 2017-01-19
項目內容:用Python寫的糗事百科的網路爬蟲。使用方法:建立一個Bug.py檔案,然後將代碼複製到裡面後,雙擊運行。程式功能:在命令提示行中瀏覽糗事百科。原理解釋:首先,先瀏覽一下糗事百科的首頁:http://www.qiushibaike.com/hot/page/1可以看出來,連結中page/後面的數字就是對應的頁碼,記住這一點為以後的編寫做準備。然後,右擊查看頁面源碼:觀察發現,每一個段子都用div標記,其中class必為content,title是發帖時間,我們只需要用Regex將其“
Time of Update: 2017-01-19
這裡就不給大家廢話了,直接上代碼,代碼的解釋都在注釋裡面,看不懂的也別來問我,好好學學基礎知識去!複製代碼 代碼如下:# -*- coding: utf-8 -*-#---------------------------------------# 程式:百度貼吧爬蟲# 版本:0.1# 作者:why# 日期:2013-05-14# 語言:Python
Time of Update: 2017-01-19
先來說一說HTTP的異常處理問題。當urlopen不能夠處理一個response時,產生urlError。不過通常的Python APIs異常如ValueError,TypeError等也會同時產生。HTTPError是urlError的子類,通常在特定HTTP
Time of Update: 2017-01-19
版本號碼:Python2.7.5,Python3改動較大,各位另尋教程。所謂網頁抓取,就是把URL地址中指定的網路資源從網路流中讀取出來,儲存到本地。 類似於使用程式類比IE瀏覽器的功能,把URL作為HTTP請求的內容發送到伺服器端, 然後讀取伺服器端的響應資源。在Python中,我們使用urllib2這個組件來抓取網頁。urllib2是Python的一個擷取URLs(Uniform Resource
Time of Update: 2017-01-19
我第一次接觸爬蟲這東西是在今年的5月份,當時寫了一個部落格搜尋引擎,所用到的爬蟲也挺智能的,起碼比電影來了這個站用到的爬蟲水平高多了!回到用Python寫爬蟲的話題。Python一直是我主要使用的指令碼語言,沒有之一。Python的語言簡潔靈活,標準庫功能強大,平常可以用作計算機,文本編碼轉換,圖片處理,批量下載,批量處理文本等。總之我很喜歡,也越用越上手,這麼好用的一個工具,一般人我不告訴他。。。因為其強大的字串處理能力,以及urllib2,cookielib,re,threading這些模組
Time of Update: 2017-01-19
有時候我們需要把一些經典的東西收藏起來,時時回味,而Coursera上的一些課程無疑就是經典之作。Coursera中的大部分完結課程都提供了完整的配套教學資源,包括ppt,視頻以及字幕等,離線下來後會非常便於學習。很明顯,我們不會去一個檔案一個檔案的下載,只有傻子才那麼幹,程式員都是聰明人!那我們聰明人準備怎麼辦呢?當然是寫一個指令碼來批量下載了。首先我們需要分析一下手工下載的流程:登入自己的Coursera賬戶(有的課程需要我們登入並選課後才能看到相應的資源),在課程資源頁面裡,找到相應的檔案
Time of Update: 2017-01-19
在上一講代碼的基礎上,做進一步修改,成為了如下程式,請看官研習這個程式:複製代碼 代碼如下:#!/usr/bin/env python#coding:utf-8class Person: def __init__(self, name, email): self.name = name
Time of Update: 2017-01-19
本文詳細講述了Python使用MySQLdb for Python操作資料庫的方法,分享給大家供大家參考。具體如下:一般來說網站就是要和資料庫進行互動,否則什麼都不用做了。今天我們就來分析一個叫MySQLdb的庫,使用這個用來和MySQL資料庫進行互動.大家可以從這裡獲得這個庫:http://sourceforge.net/projects/mysql-python如果你不確定你的python環境裡有沒有這個庫,那就開啟python shell,輸入 import
Time of Update: 2017-01-19
關於類,看官想必已經有了感覺,看下面的代碼,請仔細閱讀,並看看是否能夠發現點什麼問題呢?複製代碼 代碼如下:#!/usr/bin/env python#coding:utf-8class Person: def __init__(self, name, lang, email): self.name =
Time of Update: 2017-01-19
資料流轉過程除了在類中可以寫這種函數之外,在類中還可以寫別的函數,延續上一講的例子:複製代碼 代碼如下:#!/usr/bin/env python#coding:utf-8class Person: def __init__(self, name, lang="golang", website="www.google.com"): self.name = name &
Time of Update: 2017-01-19
本文執行個體講述了Python中MYSQLdb出現亂碼的解決方案,分享給大家供大家參考。具體方法如下:一般來說,在使用mysql最麻煩的問題在於亂碼。查看mysql的編碼:命令: 複製代碼 代碼如下:show variables like