A. python,提取HTML中左右沒有標簽的內容,怎麼提取
我一般使用BeautifulSoup,還是比較簡單的
soup=BeaitifulSoup(html,'html.parser')
要找到某各元素使用find_all方法就行
for div in soup.find_all('div'):
但是經常會遇到網站有反爬的設置,比如子結點中含有換行符,只要寫個函數去掉子結點間的換行符就行
B. python去掉html標簽
s='<SPANstyle="FONT-SIZE:9pt">開始1~3<SPANlang=EN-US><?xml:namespaceprefix=ons="urn:schemas-microsoft-com:office:office"/><o:p></o:p></SPAN></SPAN>'
importre
d=re.sub('<[^>]+>','',s)
printd
開始1~3
C. python的json.loads如何處理帶HTML的字元串
json串中的雙引號需要轉義為【\"】:
str='''[{"level": 1,"value": ["<p>aaa\"b\"ccc</p>"]}]'''
D. 如何分析網頁數據並且去除Html標簽
// 將接收到的數據增加到響應字元串中 strResponse += Encoding.ASCII.GetString(RecvBuffer, 0, nBytes); strResponse即是保存數據的字元串,此處用系統自帶的System.Text.Encoding的方法轉化 RecvBuffer,GetString的第一個參數RecvBuffer就是我們的原始數據,即包含需要解碼的位元組序列的位元組數組;第二個參數0代表第一個要解碼的位元組的索引,一般就從0開始;第三個參數nBytes為要解碼的位元組數,可以自己調整。
得到了數據的字元串形式,然後可以對網頁進行解析了(其實就是對字元串的各種操作和正則表達式的應用)。下面我以幾個例子來說明對網頁數據的解析:
// 解析頁面,查找鏈接
// 此處尚需擴展,還有某些形式的鏈接不被識別 string strRef =@"(href|HREF|src|SRC|action|ACTION|Action)[ ]*=[ ]*[""'][^""'#>]+[""']";
MatchCollection matches =new Regex(strRef).Matches(strResponse);
strStatus +="找到: "+matches.Count+" 個鏈接\r\n"; 上面的例子將網頁中的鏈接解析出來,strRef變數表示了正則表達式的模式,變數matches表示符合匹配的項目的集合,後面的 Regex(strRef).Matches(strResponse)就是創建正則規則使得strResponse里符合strRef模式的字元串都返回。然後調用matches的變數就可以取得各種信息了。
當然,這里只能識別一些基本的鏈接形式,像script中的鏈接和一些不帶「」的鏈接都沒有被支持,這個的擴展還是蠻簡單的。
再舉幾個更簡單點的解析的例子,大家學習學習:
//獲取標題 Match TitleMatch = Regex.Match(strResponse, "<title>([^<]*)</title>", RegexOptions.IgnoreCase | RegexOptions.Multiline);
title = TitleMatch.Groups[1].Value; //獲取描述信息 Match Desc = Regex.Match(strResponse, "<Meta name=\"DESCRIPTION\" content=\"([^<]*)\">", RegexOptions.IgnoreCase | RegexOptions.Multiline);
E. python正則表達式去除html標簽的屬性
importre
test='<pclass="pictext"align="center">陳細妹</p>'
test=re.sub(r'(<[^>s]+)s[^>]+?(>)',r'12',test)
print(test)
F. Python:我的HTML里有許多<title>AAA</title>和<span sytle="..">BBB</span>標簽,請問怎麼自動刪除
試試這個:
withopen('aa.html')asf:
s=f.read()
importre
s1=re.sub('<.+?>','',s)
withopen('bb.html')aswf:
wf.write(s1)
G. python 如何去掉提取出來的多餘的標簽
按照你的要求編寫的提取溫度的Python程序如下
import re
s='[<div class="hisdailytemp">
<span class="tred">17℃</span> ~
<span class="tblue">11℃ </span>
</div>]'
regex=r'>([^
]+?)<'
temp=re.compile(regex)
print(''.join(temp.findall(s)))
H. Python爬蟲怎麼循環截取html標簽中間的內容
如果是中間的數據直接就用bs4最簡單
from bs4 import BeautifulSoup
#這里是請求過來的額數據處理,提取標簽
html = BeautifulSoup(response.text, 'html.parser')
body = html.body # 獲取body部分數據
div = body.find("div",{'id','today'}) #用find去找div標簽,id叫 today的標簽裡面的數據
就可以了
如果要提取標簽內容比如value的值
div = body.find("input",id='hidden_title')['value']