常見的內建模塊

datetime :datetime是Python處理日期和時間的標準庫。

  獲取當前日期和時間

1 >>> from datetime import datetime
2 >>> now = datetime.now() # 獲取當前datetime
3 >>> print(now)
4 2015-05-18 16:28:07.198690

  獲取指定日期和時間

1 >>> from datetime import datetime
2 >>> dt = datetime(2015, 4, 19, 12, 20) # 用指定日期時間建立datetime
3 >>> print(dt)
4 2015-04-19 12:20:00

  timestamp:計算機存儲內存儲當前時間的標準計量,全球各地的計算機在任意時刻的timestamp都是徹底相同的。python

  timestamp轉換爲datetime,使用datetime提供的fromtimestamp()方法。算法

  str轉換爲datetime:datetime.strptime('2015-6-1 18:19:59', '%Y-%m-%d %H:%M:%S')瀏覽器

  datetime轉換爲str:strftime('%a, %b %d %H:%M')  app

  datetime表示的時間須要時區信息才能肯定一個特定的時間,不然只能視爲本地時間。函數

  若是要存儲datetime,最佳方法是將其轉換爲timestamp再存儲,由於timestamp的值與時區徹底無關url

collections:collections是Python內建的一個集合模塊,提供了許多有用的集合類。

  namedtuple:用來建立一個自定義的tuple對象,而且規定了tuple元素的個數,並能夠用屬性而不是索引來引用tuple的某個元素。spa

  deque:可以高效實現插入和刪除操做的雙向列表,適合用於隊列和棧。deque除了實現list的append()pop()外,還支持appendleft()popleft(),這樣就能夠很是高效地往頭部添加或刪除元素。code

  defaultdict:能夠在Key不存在時返回默認值。xml

  OrderedDict:OrderedDict的Key會按照插入的順序排列,能夠實現一個FIFO(先進先出)的dict,當容量超出限制時,先刪除最先添加的Key。對象

  Counter:簡單計算器,Counter實際上也是dict的一個子類。

Base64:是一種用64個字符來表示任意二進制數據的方法,經常使用於在URL、Cookie、網頁中傳輸少許二進制數據。

hashlib:hashlib提供了常見的摘要算法,如MD5,SHA1等等。

itertools:itertools提供了很是有用的用於操做迭代對象的函數。

  chain()能夠把一組迭代對象串聯起來,造成一個更大的迭代器。

  groupby()把迭代器中相鄰的重複元素挑出來放在一塊兒.

urllib:urllib提供了一系列用於操做URL的功能。若是要模擬瀏覽器完成特定功能,須要把請求假裝成瀏覽器。假裝的方法是先監控瀏覽器發出的請求,再根據瀏覽器的請求頭來假裝,User-Agent頭就是用來標識瀏覽器的。

  GET、POST、Handler

XML:

  DOM vs SAX:

    DOM會把整個XML讀入內存,解析爲樹,所以佔用內存大,解析慢,優勢是能夠任意遍歷樹的節點。

    SAX是流模式,邊讀邊解析,佔用內存小,解析快,缺點是咱們須要本身處理事件。

  在Python中使用SAX解析XML很是簡潔,一般咱們關心的事件是start_elementend_elementchar_data,準備好這3個函數,而後就能夠解析xml了。

  會產生3個事件:

    1. start_element事件,在讀取<a href="/">時;

    2. char_data事件,在讀取python時;

    3. end_element事件,在讀取</a>時。

HTMLParser:能夠把網頁中的文本、圖像等解析出來。

相關文章
相關標籤/搜索