<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## re模塊 常用正則表達式符號 ~~~ '.' 默認匹配除\n之外的任意一個字符,若指定flag DOTALL,則匹配任意字符,包括換行 '^' 匹配字符開頭,若指定flags MULTILINE,這種也可以匹配上(r"^a","\nabc\neee",flags=re.MULTILINE) '$' 匹配字符結尾,或e.search("foo$","bfoo\nsdfsf",flags=re.MULTILINE).group()也可以 '*' 匹配*號前的字符0次或多次,re.findall("ab*","cabb3abcbbac") 結果為['abb', 'ab', 'a'] '+' 匹配前一個字符1次或多次,re.findall("ab+","ab+cd+abb+bba") 結果['ab', 'abb'] '?' 匹配前一個字符1次或0次 '{m}' 匹配前一個字符m次 '{n,m}' 匹配前一個字符n到m次,re.findall("ab{1,3}","abb abc abbcbbb") 結果'abb', 'ab', 'abb'] '|' 匹配|左或|右的字符,re.search("abc|ABC","ABCBabcCD").group() 結果'ABC' '(...)' 分組匹配,re.search("(abc){2}a(123|456)c", "abcabca456c").group() 結果 abcabca456c '\A' 只從字符開頭匹配,re.search("\Aabc","alexabc") 是匹配不到的 '\Z' 匹配字符結尾,同$ '\d' 匹配數字0-9 '\D' 匹配非數字 '\w' 匹配[A-Za-z0-9] '\W' 匹配非[A-Za-z0-9] 's' 匹配空白字符、\t、\n、\r , re.search("\s+","ab\tc1\n3").group() 結果 '\t' ~~~ 常用匹配語法 ~~~ re.match 從頭開始匹配 re.search 匹配包含 re.findall 把所有匹配到的字符放到以列表中的元素返回 re.splitall 以匹配到的字符當做列表分隔符 re.sub 匹配字符并替換 ~~~ 常用匹配模式 ~~~ re.I(re.IGNORECASE): 忽略大小寫(括號內是完整寫法,下同) M(MULTILINE): 多行模式,改變'^'和'$'的行為(參見上圖) S(DOTALL): 點任意匹配模式,改變'.'的行為 ~~~ ## BeautifulSoup ``` <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div class="tang"> <h3 id="libai">李白</h3> <p>有耳莫洗潁川水,有口莫食首陽蕨。</p> <p>含光混世貴無名,何用孤高比云月?</p> <p>吾觀自古賢達人,功成不退皆殞身。</p> <p>子胥既棄吳江上,屈原終投湘水濱。</p> <p>陸機雄才豈自保?李斯稅駕苦不早。</p> <p>華亭鶴唳詎可聞?上蔡蒼鷹何足道?</p> <p>君不見吳中張翰稱達生,秋風忽憶江東行。</p> <p>且樂生前一杯酒,何須身后千載名?</p> </div> <div>Alex</div> <a class="alex" href="$$$$$">鏈接1</a> <a id="wu" href="$$$$$">鏈接2</a> <a class="alex" href="$$$$$">鏈接3</a> </body> </html> bs4_test.html ``` ``` from bs4 import BeautifulSoup as bs soup = bs(open('bs4_test.html',encoding='utf-8'),'lxml') print(soup.h3) #獲取屬性 print(soup.h3.attrs) print(soup.a.attrs['href']) print(soup.a['href']) #獲取內容 print(soup.a.text) print(soup.a.string) print(soup.a.get_text()) print(soup.h3.text) print(soup.h3.string) print(soup.h3.get_text()) print('--------------------') print(soup.text) print('--------------------') print(soup.string) print('--------------------') # find print(soup.find('a',class_='alex')) print('####################') #findall print(soup.find_all('a')) print(soup.find_all('a',limit=2)) print(soup.find_all('a',class_='alex')) print(soup.find_all(['a','h3'])) print('??????????????????') print(soup.select('.alex')) print(soup.select('.alex')[1].text) print(soup.select('a')) print(soup.select('#wu')) print(soup.select('#wu')[0].text) print('@@@@@@@@@@@@@@@@@@@@@@@') # 層級選擇器 print(soup.select('.tang h3')) # 包含選擇器 print(soup.select('.tang > h3')) bs4基本用法 ``` ``` <h3 id="libai">李白</h3> {'id': 'libai'} $$$$$ $$$$$ 鏈接1 鏈接1 鏈接1 李白 李白 李白 -------------------- Title 李白 有耳莫洗潁川水,有口莫食首陽蕨。 含光混世貴無名,何用孤高比云月? 吾觀自古賢達人,功成不退皆殞身。 子胥既棄吳江上,屈原終投湘水濱。 陸機雄才豈自保?李斯稅駕苦不早。 華亭鶴唳詎可聞?上蔡蒼鷹何足道? 君不見吳中張翰稱達生,秋風忽憶江東行。 且樂生前一杯酒,何須身后千載名? Alex 鏈接1 鏈接2 鏈接3 -------------------- None -------------------- <a class="alex" href="$$$$$">鏈接1</a> #################### [<a class="alex" href="$$$$$">鏈接1</a>, <a href="$$$$$" id="wu">鏈接2</a>, <a class="alex" href="$$$$$">鏈接3</a>] [<a class="alex" href="$$$$$">鏈接1</a>, <a href="$$$$$" id="wu">鏈接2</a>] [<a class="alex" href="$$$$$">鏈接1</a>, <a class="alex" href="$$$$$">鏈接3</a>] [<h3 id="libai">李白</h3>, <a class="alex" href="$$$$$">鏈接1</a>, <a href="$$$$$" id="wu">鏈接2</a>, <a class="alex" href="$$$$$">鏈接3</a>] ?????????????????? [<a class="alex" href="$$$$$">鏈接1</a>, <a class="alex" href="$$$$$">鏈接3</a>] 鏈接3 [<a class="alex" href="$$$$$">鏈接1</a>, <a href="$$$$$" id="wu">鏈接2</a>, <a class="alex" href="$$$$$">鏈接3</a>] [<a href="$$$$$" id="wu">鏈接2</a>] 鏈接2 @@@@@@@@@@@@@@@@@@@@@@@ [<h3 id="libai">李白</h3>] [<h3 id="libai">李白</h3>] 輸出結果 ``` ## lxml ``` <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title></title> </head> <body> <div class="tang"> <h3 id="Li">李白</h3> <p>云想衣裳花想容,春風拂檻露華濃。</p> <p>若非群玉山頭見,會向瑤臺月下逢。</p> <p>獨坐敬亭山</p> <p>合沓牽數峰,奔地鎮平楚。</p> <p>中間最高頂,髣髴接天語。</p> </div> <div class="qingZhao"> <a class="敬亭山" href="#"><h3>[唐] 李白</h3></a> <span>李清照(1084年3月13日—約1155年),號易安居士,漢族,齊州濟南(今山東省濟南市章丘區)人。宋代女詞人,婉約詞派代表,有“千古第一才女”之稱。 李清照出生于書香門第,早期生活優裕,其父李格非藏書甚富,她小時候就在良好的家庭環境中打下文學基礎。出嫁后與夫趙明誠共同致力于書畫金石的搜集整理。 金兵入據中原時,流寓南方,境遇孤苦。所作詞,前期多寫其悠閑生活,后期多悲嘆身世,情調感傷。形式上善用白描手法,自辟途徑,語言清麗。論詞強調協律, 崇尚典雅,提出詞“別是一家”之說,反對以作詩文之法作詞。能詩,留存不多,部分篇章感時詠史,情辭慷慨,與其詞風不同。 有《易安居士文集》《易安詞》,已散佚。后人有《漱玉詞》輯本。今有《李清照集校注》。</span> <p>醉花陰·薄霧濃云愁永晝</p> <a class="zuihuayin">[宋] 李清照</a> <p>薄霧濃云愁永晝。瑞腦消金獸。佳節又重陽,玉枕紗廚,半夜涼初透。東籬把灑黃昏後,有暗香盈袖。莫道不消魂,簾卷西風,人似黃花瘦。</p> </div> <div class="lizhi"> <a class="zuihuayin">[宋] 李清照</a> <p>你的對手在看書</p> <p>你的敵人在磨刀</p> <p>你的閨蜜在減肥</p> <p>隔壁老王在練腰</p> </div> </body> </html> new_file.html ``` ``` from lxml import etree tree = etree.parse('new_file.html') print(tree) ret = tree.xpath('//div[@class="tang"]/p/text()') print(ret) print(ret[0]) ret = tree.xpath('//p') print(ret) ret = tree.xpath('//div[@class="qingZhao"]/span/text()') print(ret) ret = tree.xpath('//h3//text()') print(ret) ret = tree.xpath('//div[@class="qingZhao"]//@href') print(ret[0]) xpath基本使用 ``` ``` <lxml.etree._ElementTree object at 0x0000022CDA5DB788> ['云想衣裳花想容,春風拂檻露華濃。', '若非群玉山頭見,會向瑤臺月下逢。', '獨坐敬亭山', '合沓牽數峰,奔地鎮平楚。', '中間最高頂,髣髴接天語。'] 云想衣裳花想容,春風拂檻露華濃。 [<Element p at 0x22cda5db7c8>, <Element p at 0x22cda5db808>, <Element p at 0x22cda5db848>, <Element p at 0x22cda5db888>, <Element p at 0x22cda5db8c8>, <Element p at 0x22cda5db948>, <Element p at 0x22cda5db988>, <Element p at 0x22cda5db9c8>, <Element p at 0x22cda5dba08>, <Element p at 0x22cda5db748>, <Element p at 0x22cda5dba48>] ['李清照(1084年3月13日—約1155年),號易安居士,漢族,齊州濟南(今山東省濟南市章丘區)人。宋代女詞人,婉約詞派代表,有“千古第一才女”之稱。\n\t\t\t李清照出生于書香門第,早期生活優裕,其父李格非藏書甚富,她小時候就在良好的家庭環境中打下文學基礎。出嫁后與夫趙明誠共同致力于書畫金石的搜集整理。\n\t\t\t金兵入據中原時,流寓南方,境遇孤苦。所作詞,前期多寫其悠閑生活,后期多悲嘆身世,情調感傷。形式上善用白描手法,自辟途徑,語言清麗。論詞強調協律,\n\t\t\t崇尚典雅,提出詞“別是一家”之說,反對以作詩文之法作詞。能詩,留存不多,部分篇章感時詠史,情辭慷慨,與其詞風不同。\n\t\t\t有《易安居士文集》《易安詞》,已散佚。后人有《漱玉詞》輯本。今有《李清照集校注》。'] ['李白', '[唐] 李白'] # 輸出結果 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看