scrapy,python開發的乙個快速、高層次的螢幕抓取和web抓取框架,用於抓取web站點並從頁面中提取結構化的資料。scrapy用途廣泛,可以用於資料探勘、監測和自動化測試。
然後win + r輸入cmd進入命令列,輸入pip install scrapy 回車鍵進行安裝:
安裝後用scrapy進行測試是否安裝成功,結果如下圖:
還有一種簡單粗暴的方法,直接在命令列輸入conda install scrapy進行安裝
這種方法不是所有都適合用,可能會成功也可能會失敗
比如word,它可以同時進行打字、拼寫檢查、列印等事情。在乙個程序內部,要同時幹多件事,就需要同時執行多個「子任務」,我們把程序內的這些「子任務」稱為執行緒。
對於作業系統來說,乙個任務就是乙個程序(process),比如開啟乙個瀏覽器就是啟動乙個瀏覽器程序,開啟乙個記事本就啟動了乙個記事本程序,開啟兩個記事本就啟動了兩個記事本程序,開啟乙個word就啟動了乙個word程序。
我們前面編寫的所有的python程式,都是執行單任務的程序,也就是只有乙個執行緒.
如果我們要同時執行多個任務怎麼辦?
1.啟動多個程序,每個程序雖然只有乙個執行緒,但多個程序可以一塊執行多個任務。
2.啟動乙個程序,在乙個程序內啟動多個執行緒,這樣,多個執行緒也可以一塊執行多個任務。
當然還有第三種方法,就是啟動多個程序,每個程序再啟動多個執行緒,這樣同時執行的任務就更多了,當然這種模型更複雜,實際很少採用。
總結多工實現的3中方式:
同時執行多個任務通常各個任務之間並不是沒有關聯的,而是需要相互通訊和協調,有時,任務1必須暫停等待任務2完成後才能繼續執行,有時,任務3和任務4又不能同時執行,所以,多程序和多執行緒的程式的複雜度要遠遠高於我們前面寫的單程序單執行緒的程式。
python既支援多程序,又支援多執行緒,我們會討論如何編寫這兩種多工程式。
1.**執行預設都是在主線程裡面,如果需要執行新的任務,可以開闢分執行緒
2.分執行緒個數沒有限制,分執行緒裡面的任務結束後,分執行緒結束
1.當有大量任務需要執行的時候,可以將任務放入到分執行緒裡面
2.當有大量任務需要執行的時候,而任務的執行順序需要指定的時候,可以使用分執行緒
3.當介面有大量效果(ui介面)需要更新的時候,需要放入到分執行緒
1.分執行緒可以同時開啟多個任務,所有的任務自己完成
2.非同步可以同時開啟多個任務,但是自己只做乙個任務,其他任務命令其他人來完成
import threading
print('當前執行緒為',threading.current_thread().name)
def mythread():
print('位置1',threading.current_thread().name)
print('位置2', threading.current_thread().name)
print('位置3', threading.current_thread().name)
print('位置4', threading.current_thread().name)
print('位置5', threading.current_thread().name)
print('位置6', threading.current_thread().name)
class people(object):
def thread_test(self):
print('物件方法',threading.current_thread().name)
p = people()
p.thread_test()
# threading.thread開闢乙個新的執行緒 target目標 name分執行緒名稱
#開始執行分執行緒
sub_thread = threading.thread(target=mythread,name='newthread')
sub_thread.start()
print('outsidel',threading.current_thread().name)
print('outside2',threading.current_thread().name)
print('outside3',threading.current_thread().name)
print('outside4',threading.current_thread().name)
print('outside5',threading.current_thread().name)
執行緒是最小的執行單元,而程序由至少乙個執行緒組成,如何排程程序和執行緒,完全決定於作業系統,程式自己不能決定什麼時候執行,執行多長時間.
多程序和多執行緒 涉及到同步,資料共享的問題,編寫更複雜
安裝APK的兩種方式
一般通過網線連線到裝置,通過網線進行apk的傳輸和安裝。步驟如下 1 adb connect 目標裝置ip和埠 2 adb install 本地apk路徑。如果已經安裝過,那麼可以通過adb install r 本地apk路徑 命令覆蓋安裝 通過usb線連上裝置,如果裝置需要安裝驅動的,先安裝驅動。...
MySQL的兩種安裝方式
安裝軟體前,檢查是否已經安裝 rpm qa grep mysql 存在,強制解除安裝 sudo rpm e mysql libs 5.1.71 1.el6.x86 64 nodeps 安裝mysql server sudo rpm ivh mysql community server 5.7.21 ...
nginx的兩種安裝方式
安裝nginx 安裝nginx主要有兩種方式,一種是yum安裝,一種是原始碼包安裝 yum安裝 root node1 wget o etc yum.repos.d epel.repo 2.安裝nginx root node1 yum install nginx y root node1 nginx ...