华南俳烁实业有限公司

python

當前位置:中華考試網(wǎng) >> python >> python爬蟲 >> 文章內(nèi)容

python腳本爬蟲入門

來源:中華考試網(wǎng)  [2020年11月2日]  【

  A. Jesse Jiryu Davis 是紐約 MongoDB 的工程師。他編寫了異步 MongoDB Python 驅(qū)動程序 Motor,也是 MongoDB C 驅(qū)動程序的開發(fā)領(lǐng)袖和 PyMongo 團隊成員。 他也為 asyncio 和 Tornado 做了貢獻,本文在已經(jīng)在《linux就該這么學》官網(wǎng)發(fā)布。以下是小編為你整理的python腳本爬蟲入門

  如先定義一個列表

  a = [123,'456']

  一個是int類型,一個是str類型

  添加一個元素,使用append

  比如a.append(789)

  括號中的就是要添加的元素

  在指定位置添加元素,使用insert

  比如a.insert(1,'ABC')

  括號中前面的是指定位置,后面的是要插入添加的元素

  注意:位置從0開始,比如當前[123, '456', 789]

  123是位置0,'456'是位置1,789是位置3

  insert(1.'ABC')的意思是,在位置1插入'ABC',而位置1和之后的都往后挪動一位

  先定義一個列表

  a = [123, 'ABC', '456', 789, 123]

  刪除指定對象,使用remove

  比如:a.remove(123)

  注意:它不會把列表里面的所有123都刪,只會刪除最前面的與一個

  3

  如果你刪除的指定對象不存在的話,那么會報錯

  比如:列表沒有999這個元素,你非要刪除這個元素的話,會報錯

python課程免費試聽預(yù)約

  • 地區(qū):
  • 姓名:
  • 手機:

  如何去下載

  百度搜索“Python”,在官網(wǎng)中選擇Python2.7,在選擇列表項上雙擊即可下載;(Ps:雖然現(xiàn)在Python已經(jīng)出到3.6版本,但由于版本差別不會特別大,而且公司項目使用的是舊版本的2.x,所以還是先從2.x開始)

  雙擊下載好的Python2.7,進入安裝界面,選擇軟件的使用用戶,默認下一步即可;

  設(shè)置Python2.7的安裝目錄,一般都為系統(tǒng)根目錄下(C盤),默認即可;

  進入程序組件安裝界面,拉取下拉框,選擇安裝組件“Add python.exe to Path”,然后點擊“Next”,默認安裝即可;

  不多時,即可看到安裝完成界面

  此外,由安裝了組件“Add python.exe to Path”也不需再配置Python的環(huán)境變量,它已經(jīng)自動配置好了,查看如圖可知;

  測試Python2.7是否已經(jīng)正確安裝完成,按下“win”+“R”鍵,輸入“cmd”,點擊確定,在彈出的命令行窗口中輸入“Python”命令,即可看到電腦中已經(jīng)安裝好的Python;

  python的優(yōu)點

  簡單,python主張的是極簡主義,學python就像在學英語一樣。

  易學,學習python并不難,入門很快很簡單,比c++,java容易多了。

  開源,python是免費開源產(chǎn)品,你可以自由地發(fā)布python這個軟件,不用擔心盜版和侵權(quán)。

  自動內(nèi)存管理,內(nèi)存溢出一直以來都是很頭疼的事情,而python則是自己自動管理內(nèi)存的。

  可以移植 ,python無論在windows和linux上都可以直接運行、。

  可擴展,python還可以嵌入其他的語言,比如java和c++等。

  但同時python也有自己的缺點,那就是運行的速度比起c++來說速度是慢了10倍的。

  異步代碼

  還記得我們對你許下的承諾么?我們可以寫出這樣的異步代碼,它既有回調(diào)方式的高效,也有多線程代碼的簡潔。這個結(jié)合是同過一種稱為協(xié)程coroutine的模式來實現(xiàn)的。使用 Python3.4 標準庫 asyncio 和一個叫“aiohttp”的包,在協(xié)程中獲取一個網(wǎng)頁是非常直接的( @asyncio.coroutine 修飾符并非魔法。事實上,如果它修飾的是一個生成器函數(shù),并且沒有設(shè)置 PYTHONASYNCIODEBUG 環(huán)境變量的話,這個修飾符基本上沒啥用。它只是為了框架的其它部分方便,設(shè)置了一個屬性 _is_coroutine 而已。也可以直接使用 asyncio 和裸生成器,而沒有 @asyncio.coroutine 修飾符):

  @asyncio.coroutine def fetch(self, url): response = yield from self.session.get(url) body = yield from response.read()

  它也是可擴展的。在作者 Jesse 的系統(tǒng)上,與每個線程 50k 內(nèi)存相比,一個 Python 協(xié)程只需要 3k 內(nèi)存。Python 很容易就可以啟動上千個協(xié)程。

  協(xié)程的概念可以追溯到計算機科學的遠古時代,它很簡單,一個可以暫停和恢復(fù)的子過程。線程是被操作系統(tǒng)控制的搶占式多任務(wù),而協(xié)程的多任務(wù)是可合作的,它們自己選擇什么時候暫停去執(zhí)行下一個協(xié)程。

  有很多協(xié)程的實現(xiàn)。甚至在 Python 中也有幾種。Python 3.4 標準庫 asyncio 中的協(xié)程是建立在生成器之上的,這是一個 Future 類和“yield from”語句。從 Python 3.5 開始,協(xié)程變成了語言本身的特性(“PEP 492 Coroutines with async and await syntax” 中描述了 Python 3.5 內(nèi)置的協(xié)程)。然而,理解 Python 3.4 中這個通過語言原有功能實現(xiàn)的協(xié)程,是我們處理 Python 3.5 中原生協(xié)程的基礎(chǔ)。具體詳細的配置圖解請參考http://www.linuxprobe.com/asyncio-cooperative-network-2.html

  要解釋 Python 3.4 中基于生成器的協(xié)程,我們需要深入生成器的方方面面,以及它們是如何在 asyncio 中用作協(xié)程的。

責編:fushihao
  • 會計考試
  • 建筑工程
  • 職業(yè)資格
  • 醫(yī)藥考試
  • 外語考試
  • 學歷考試
仪陇县| 兴义市| 五华县| 马尔康县| 岢岚县| 怀柔区| 朝阳县| 清涧县| 来凤县| 巴林右旗| 毕节市| 深州市| 成武县| 安泽县| 焦作市| 伊宁县| 无棣县| 万山特区| 宜兰县| 彭泽县| 怀化市| 阿拉善右旗| 广汉市| 新津县| 绥宁县| 深圳市| 南安市| 大埔县| 奉贤区| 上杭县| 明星| 武安市| 芜湖县| 固安县| 资源县| 来安县| 区。| 东宁县| 洪雅县| 苍溪县| 昂仁县|