Scrapy是一個開源的Python數據抓取框架,速度快,強大,而且使用簡單。來看一個官網主頁上的簡單并完整的爬蟲:雖然只有10行左右的代碼,但是它的確是一個完整的爬蟲服務:當執行scrapyrunspiderxxx.py命令的時候,Scrapy在項目里查找Spider(蜘蛛?)并通過爬蟲引擎來執行它。首先從定義在start_urls里的URL開始發起請求,然后通過parse()方法處理響應。response參數就是返回的響應對象。在parse()方法中,
系統 2019-09-27 17:53:38 1965
一般用xlml但遇到過解析出來的內容不一樣。有誤用另一種方法得到正確的,有誤應該只是極少問題。這種方案備用html=browser.page_sourcehtm=bs(html,'html.parser')
系統 2019-09-27 17:53:29 1965
最近基于對抗樣本做了一些工作,這里寫一篇論文介紹對抗樣本基本的原理和生成方法。內容上參考Goodfellow的論文ExplainingandHarnessingAdversarialExamples一、什么是對抗樣本?對抗樣本的概念最早提出于2014年Szegedy的論文IntriguingPropertiesofNeuralNetworks.在論文,作者發現了一種有趣的現象,即:當前流行的機器學習模型包括神經網絡會容易以很高的置信度分錯和原始樣本僅僅有輕
系統 2019-09-27 17:53:26 1965
Python爬蟲之selenium高級功能原文地址表單操作元素拖拽頁面切換彈窗處理表單操作表單里面會有文本框、密碼框、下拉框、登陸框等。這些涉及與頁面的交互,比如輸入、刪除、點擊等。前提是找到頁面中的元素。例如下面有一個表單輸入框:"text"name="passwd"id="passwd-id"/>獲取這個元素的方法:element=driver.find_element_by_id("passwd-id")element=driver.find_ele
系統 2019-09-27 17:53:02 1965
生成器(generator)概念生成器不會把結果保存在一個系列中,而是保存生成器的狀態,在每次進行迭代時返回一個值,直到遇到StopIteration異常結束。生成器語法生成器表達式:通列表解析語法,只不過把列表解析的[]換成()生成器表達式能做的事情列表解析基本都能處理,只不過在需要處理的序列比較大時,列表解析比較費內存。>>>gen=(x**2forxinrange(5))>>>genat0x0000000002FB7B40>>>>forgingen:
系統 2019-09-27 17:52:55 1965
由于工作的需求,需要用python做一個類似網絡爬蟲的采集器。雖然Python的urllib模塊提供更加方便簡潔操作,但是涉及到一些底層的需求,如手動設定User-Agent,Referer等,所以選擇了直接用socket進行設計。當然,這樣的話,需要對HTTP協議比較熟悉,HTTP協議這里就不做講解了。整個python的代碼如下:#!/usr/binenvpythonimportsockethost="www.baidu.com"se=socket.so
系統 2019-09-27 17:52:30 1965
原文鏈接:https://www.runoob.com/w3cnote/python-func-decorators.html學習菜鳥教程上一個同學的筆記,寫的很好理解。轉來學習。原文鏈接:https://www.runoob.com/w3cnote/python-func-decorators.html開始之前先提醒一下:多個裝飾器的調用順序為:從下往上每個人都有的內褲主要功能是用來遮羞,但是到了冬天它沒法為我們防風御寒,咋辦?我們想到的一個辦法就是把內
系統 2019-09-27 17:52:15 1965
打開excel文件讀取數據data=xlrd.open_workbook("excelFile.xls")讀取工作表table=data.sheets()[0]#通過索引順序獲取table=data.sheet_by_index(0)#通過索引順序獲取table=data.sheet_by_name(u'Sheet1')#通過名稱獲取獲取整行和整列的值(數組)table.row_values(i)#獲取整行值table.col_values(i)#獲取整列
系統 2019-09-27 17:51:17 1965
Python這門解釋性語言也有專門的線程模型,Python虛擬機使用GIL(GlobalInterpreterLock,全局解釋器鎖)來互斥線程對共享資源的訪問,但暫時無法利用多處理器的優勢。在Python中我們主要是通過thread和threading這兩個模塊來實現的,其中Python的threading模塊是對thread做了一些包裝的,可以更加方便的被使用,所以我們使用threading模塊實現多線程編程。這篇文章我們主要來看看Python對多線程
系統 2019-09-27 17:51:00 1965
本文實例講述了Python實現使用request模塊下載圖片。分享給大家供大家參考,具體如下:利用流傳輸下載圖片#-*-coding:utf-8-*-importrequestsdefdownload_image():"""demo:下載圖片:return:"""headers={"User-Agent":"Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/45
系統 2019-09-27 17:50:59 1965