Python XPath 多執行緒例項

2021-07-04 18:36:41 字數 1245 閱讀 3678

————————————————xpath初識————————————————

#-*_coding:utf-8-*-

from lxml import etree

# //定位根節點

# /往下層尋找

# /text() 提取文字內容

# /@***x 提取屬性內容

html = '''

極客學院

點我開啟課程庫

'''selector =etree.html(html)

#提取文字

content = selector.xpath('//ul[@id="useful"]/li/text()')

for each in content:

print each

#提取屬性

link = selector.xpath('//a/@href')

for each in link:

print each

title = selector.xpath('//a/@title')

print title[0]

html1 = '''

需要的內容1

需要的內容2

需要的內容3

'''html2 = '''

我左青龍,

右白虎,

老牛在當中,

龍頭在胸口。

'''selector = etree.html(html1)

content = selector.xpath('//div[starts-with(@id,"test")]/text()')

for each in content:

print each

selector = etree.html(html2)

content_1 = selector.xpath('//div[@id="test3"]/text()')

for each in content_1:

print each

data = selector.xpath('//div[@id="test3"]')[0]

info = data.xpath('string(.)')

content_2 = info.replace('\n','').replace(' ','')

print content_2

————————————————多執行緒爬蟲例項————————————————

多執行緒簡單例項 beginthreadx實現

使用 beginthreadex 函式,需使用標頭檔案,且進行編譯環境的設定 詳見上篇文章 執行緒的建立和終止 c include include include using namespace std static unsigned stdcall thread1 void param stati...

springboot 中多執行緒 執行緒池如何實現

1.概念理解 多執行緒和非同步呼叫之前一直不理解有什麼區別,發現,這兩個是一件事情的不同角度,多執行緒是方法,非同步是目的 在springboot 可以通過註解 async 搞定。執行緒池 執行緒池引入的目的是為了解決 多次使用執行緒意味著,我們需要多次建立並銷毀執行緒。而建立並銷毀執行緒的過程勢必...

hpe實訓課 多執行緒3

使用繼承的方式來實現 class window extends thread else public class testwindow 使用實現的方式來實現 class window1 implements runnable catch interruptedexception e system.o...