幾乎所有的微薄都提供了縮短網址的服務,其原理就是將一個url地址按照一定的算法生成一段字符串,然后加在一個短域名后面邊成了一個新的url地址,數據庫中會存放這個短地址和原始的地址,當用戶點擊這個新的短地址后,短地址服務會根據短域名后面的幾個字符串從數據庫中讀出原來的地址然后頁面進行跳轉。比如新浪微薄中的url是http://t.cn/xxxxxxxt.cn是其域名,其后面跟著的是7位算出來的字符串。方法一:使用哈希庫自定義算法因為文本中顯示太長的url會比
系統(tǒng) 2019-09-27 17:48:18 1634
0x00:使用xpath進行網頁解析#coding:utf-8importrequestsimportosimportrefromlxmlimportetreeimporttimedefget_title(title):#獲取標題,創(chuàng)建文件path=r"./Pic/"+titleifos.path.exists(path):#文件夾存在,返回returnpathelse:os.makedirs(path)#創(chuàng)建空文件夾returnpathdefpic_ge
系統(tǒng) 2019-09-27 17:48:15 1634
因為GAE在國內訪問不便,所以平時有一些小應用,我都會放在SAE上面,雖然SAE還有很多缺陷,但算是上手比較容易的一個了,最起碼文檔寫的不錯。開發(fā)SAE上的應用,我一般都用Flask,SAE預裝了Flask,所以你可以直接用,但我們難免會用一些沒有預裝的庫。如果是在以前,可能需要自己將package挨個copy到應用目錄中,然后手動加載,現(xiàn)在嘛,不需要那么麻煩了,SAE有個非常不錯的解決方案,見《安裝依賴的第三方包》你可以使用saecloud來代替pip安
系統(tǒng) 2019-09-27 17:48:13 1634
python解釋器運行代碼的流程啟動python解釋器(相當于文本編輯器)打開文件,顯示這個字符并檢查語法(涉及字符編碼,a=1只是一個很普通的字符)解釋字符(涉及字符編碼,再去內存空間生成一個a=1的變量)python2用的是ascii,python3默認是utf8讀取字符#coding:gbk會告訴python3解釋器用gbk編碼讀取字符python3(了解)你看到的其實是unicode但是終端幫你把這個unicode的0和1做一個轉換,從unicod
系統(tǒng) 2019-09-27 17:48:12 1634
并發(fā)與鎖a.多個線程共享數據的時候,如果數據不進行保護,那么可能出現(xiàn)數據不一致現(xiàn)象,使用鎖,信號量、條件鎖b.c.互斥鎖1.互斥鎖,是使用一把鎖把代碼保護起來,以犧牲性能換取代碼的安全性,那么Rlock后必須要relase解鎖不然將會失去多線程程序的優(yōu)勢2.互斥鎖的基本使用規(guī)則:1importthreading2#聲明互斥鎖3lock=threading.Rlock();4defhandle(sid):#功能實現(xiàn)代碼5lock.acquire()#加鎖6#
系統(tǒng) 2019-09-27 17:48:09 1634
分號不要在行尾加分號,也不要用分號將兩條命令放在同一行.行長度每行不超過80個字符例外:長的導入模塊語句注釋里的URL不要使用反斜杠連接行.Python會將圓括號,中括號和花括號中的行隱式的連接起來,你可以利用這個特點.如果需要,你可以在表達式外圍增加一對額外的圓括號.Yes:foo_bar(self,width,height,color='black',design=None,x='foo',emphasis=None,highlight=0)if(wi
系統(tǒng) 2019-09-27 17:48:08 1634
5.16列表生成式l=[]foriinrange(100):l.append('egg%s'%i)print(l)?l=['egg%s'%iforiinrange(100)]l=['egg%s'%iforiinrange(1000)ifi>10]print(l)5.17列表生成式與生成器表達式的應用names=['egon','alex_sb','wupeiqi','yuanhao','lxx']res=map(lambdax:x.upper(),name
系統(tǒng) 2019-09-27 17:48:05 1634
python的fnmatch還真是省心,相比于java中的FilenameFilter,真是好太多了,你完成不需要去實現(xiàn)什么接口。fnmatch配合os.walk()或者os.listdir(),你能做的事太多了,而且用起來相當easy。#coding:utf-8"""遍歷C盤下的所有dll文件"""importosimportfnmatchdefmain():f=open('dll_list.txt','w')forroot,dirs,filesinos
系統(tǒng) 2019-09-27 17:48:05 1634
本文根據ApacheFlink系列直播課程整理而成,由ApacheFlinkPMC,阿里巴巴高級技術專家孫金城分享。重點為大家介紹FlinkPythonAPI的現(xiàn)狀及未來規(guī)劃,主要內容包括:ApacheFlinkPythonAPI的前世今生和未來發(fā)展;ApacheFlinkPythonAPI架構及開發(fā)環(huán)境搭建;ApacheFlinkPythonAPI核心算子介紹及應用。一.ApacheFlinkPythonAPI的前世今生和未來發(fā)展1.Flink為什么選擇
系統(tǒng) 2019-09-27 17:48:03 1634
map函數map(func,*iterables)-->mapobject參數function傳的是一個函數名,可以是python內置的,也可以是自定義的。參數iterable傳的是一個可以迭代的對象,例如列表,元組,字符串這樣的。處理序列中的的每個元素,得到的結果是一個‘列表+’,該列表的元素個數及位置與原來的一樣;a=(1,2,3,4,5)b=[1,2,3,4,5]la=map(lambdax:x+1,a)lb=map(lambdax:x**2,b)p
系統(tǒng) 2019-09-27 17:48:02 1634