Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 欧美日韩在线成人,天天想夜夜操,久久亚洲精品无码观看不卡

          整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          頁面關(guān)鍵字查找(頁面關(guān)鍵字搜索快捷鍵)

          編親身體驗,教你如何用Js獲取頁面關(guān)鍵詞

          在網(wǎng)絡(luò)時代,關(guān)鍵詞的重要性不言而喻。無論是SEO優(yōu)化,還是網(wǎng)站內(nèi)容策劃,都需要準(zhǔn)確獲取頁面關(guān)鍵詞。但是,如何用Js獲取頁面關(guān)鍵詞呢?小編今天就來為大家分享一下親身體驗的方法。

          一、了解Js獲取頁面關(guān)鍵詞的原理

          在深入了解如何用Js獲取頁面關(guān)鍵詞之前,我們先來了解一下其原理。通常情況下,搜索引擎會根據(jù)網(wǎng)頁的標(biāo)題、描述和內(nèi)容等信息來確定關(guān)鍵詞。而Js獲取頁面關(guān)鍵詞的方法就是通過解析網(wǎng)頁源代碼,提取其中的文本內(nèi)容,并進(jìn)行分析和處理,最終得到頁面的關(guān)鍵詞。

          二、使用正則表達(dá)式提取關(guān)鍵詞

          使用正則表達(dá)式是一種常見且有效的方法來提取頁面的關(guān)鍵詞。我們可以通過正則表達(dá)式匹配特定的字符或者字符組合,并將其作為關(guān)鍵詞進(jìn)行保存和處理。

          具體操作步驟如下:

          1.獲取網(wǎng)頁源代碼

          使用`document.documentElement.outerHTML`可以獲取當(dāng)前網(wǎng)頁的源代碼。

          2.匹配關(guān)鍵詞

          使用正則表達(dá)式`/\/`可以匹配到網(wǎng)頁中的關(guān)鍵詞。

          3.提取關(guān)鍵詞

          使用`match()`方法可以將匹配到的關(guān)鍵詞提取出來,并保存在一個數(shù)組中。

          4.處理關(guān)鍵詞

          可以使用循環(huán)遍歷的方式對提取到的關(guān)鍵詞進(jìn)行處理,比如去除空格、轉(zhuǎn)換為小寫等。

          5.顯示關(guān)鍵詞

          最后,可以將處理后的關(guān)鍵詞顯示在頁面上,供用戶參考和使用。

          三、Js獲取頁面關(guān)鍵詞的注意事項

          在實(shí)際應(yīng)用中,我們還需要注意以下幾點(diǎn):

          1.關(guān)鍵詞的數(shù)量和質(zhì)量都很重要,不宜過多也不宜過少。一般來說,3~5個關(guān)鍵詞比較合適。

          2.關(guān)鍵詞應(yīng)該與網(wǎng)頁內(nèi)容密切相關(guān),避免出現(xiàn)無關(guān)或重復(fù)的關(guān)鍵詞。

          3.頁面的標(biāo)題、描述和內(nèi)容也是搜索引擎確定關(guān)鍵詞的重要依據(jù),因此需要合理設(shè)置和優(yōu)化。

          4. Js獲取頁面關(guān)鍵詞只是一種輔助手段,不能代替其他SEO優(yōu)化措施和策略。

          五、總結(jié)

          通過上述步驟,我們可以輕松地使用Js獲取頁面關(guān)鍵詞。當(dāng)然,在實(shí)際應(yīng)用中還有很多細(xì)節(jié)需要注意,這需要我們根據(jù)具體情況進(jìn)行調(diào)整和優(yōu)化。希望本文對大家有所幫助,謝謝閱讀!

          六、參考代碼

          javascript
          //獲取網(wǎng)頁源代碼
          var html = document.documentElement.outerHTML;
          //匹配關(guān)鍵詞
          var regex =/\<meta\sname=\"keywords\"\scontent=\"(.*?)\"\>/;
          var matches = html.match(regex);
          //提取關(guān)鍵詞
          var keywords =[];
          if (matches && matches.length >1){
              keywords = matches[1].split(",");
          }
          //處理關(guān)鍵詞
          for (var i =0; i < keywords.length;i++){
              keywords[i]= keywords[i].trim().toLowerCase();
          }
          //顯示關(guān)鍵詞
          console.log(keywords);
          

          以上就是小編親身體驗的Js獲取頁面關(guān)鍵詞的方法,希望能對大家有所啟發(fā)和幫助。如果還有其他問題,請隨時留言,小編會盡快回復(fù)解答。謝謝!

          eautiful Soup 搜索文檔

          html_doc = """
          <html><head><title>index</title></head>
          <body>
          <p class="title"><b>首頁</b></p>
          <p class="main">我常用的網(wǎng)站
          <a href="https://www.google.com" class="website" id="google">Google</a>
          <a href="https://www.baidu.com" class="website" id="baidu">Baidu</a>
          <a href="https://cn.bing.com" class="website" id="bing">Bing</a>
          </p>
          <div><!--這是注釋內(nèi)容--></div>
          <p class="content1">...</p>
          <p class="content2">...</p>
          </body>
          """
          soup = BeautifulSoup(html_doc, "lxml")
          

          過濾器

          正式講解搜索文檔之前,我們有必要了解下 Beautiful Soup 的過濾器,這些過濾器在整個搜索的 API 中都有所體現(xiàn),他們可以被用在 TAG 的 name 中,屬性中,字符串中或他們的混合中。聽起來有點(diǎn)繞是么,看幾個例子就懂了。

          1、根據(jù) TAG 的 name 來查找標(biāo)簽,下面的例子會查找文檔中的所有 b 標(biāo)簽。同時要注意統(tǒng)一傳入 Unicode 編碼以避免 Beautiful Soup 解析編碼出錯。

          # demo 1
          tags = soup.find_all('b')
          print(tags)
          
          #輸出結(jié)果
          [<b>首頁</b>]
          

          2、如果傳入正則表達(dá)式作為參數(shù),那么 Beautiful Soup 會通過正則表達(dá)式的 match() 來匹配內(nèi)容。

          # demo 2
          import re
          for tag in soup.find_all(re.compile("^b")):
              print(tag.name)
          
          #輸出結(jié)果
          body
          b
          

          3、如果傳入列表參數(shù),那么 Beautiful Soup 會將與列表中任意一個元素匹配的內(nèi)容返回。

          # demo 3
          for tag in soup.find_all(['a', 'b']):
              print(tag)
          
          #輸出結(jié)果
          <b>首頁</b>
          <a class="website" href="https://www.google.com" id="google">Google</a>
          <a class="website" href="https://www.baidu.com" id="baidu">Baidu</a>
          <a class="website" href="https://cn.bing.com" id="bing">Bing</a>
          

          4、True 可以匹配任何值,下面的例子是查找所有的 TAG 但不會返回字符串。

          # demo 4
          for tag in soup.find_all(True):
              print(tag.name, end=', ')
           
          #輸出結(jié)果
          html, head, title, body, p, b, p, a, a, a, div, p, p, 
          

          5、方法。我們可以定義一個方法,該方法只接受一個參數(shù),若該方法返回 True 則表示當(dāng)前元素匹配并且被找到,返回 False 意味著沒找到。下面的例子展示了查找所有同時包含 class 屬性和 id 屬性的節(jié)點(diǎn)。

          # demo 5
          def has_id_class(tag):
              return tag.has_attr('id') and tag.has_attr('class')
          
          tags = soup.find_all(has_id_class)
          for tag in tags:
          	print(tag)
          	
          #輸出結(jié)果
          <a class="website" href="https://www.google.com" id="google">Google</a>
          <a class="website" href="https://www.baidu.com" id="baidu">Baidu</a>
          <a class="website" href="https://cn.bing.com" id="bing">Bing</a>
          

          大部分情況字符串過濾器就可以滿足我們的需求,外加這個神奇的方法過濾器,我們就可以實(shí)現(xiàn)各種自定義需求了。

          find_all() 函數(shù)

          該函數(shù)搜索當(dāng)前節(jié)點(diǎn)下的所有子節(jié)點(diǎn),其簽名如下find_all( name , attrs , recursive , text , **kwargs )。我們可以傳入指定 TAG 的 name 來查找節(jié)點(diǎn),上面已經(jīng)舉過例子了,這里不再贅述。我們來看幾個其他的用法。

          1、如果我們轉(zhuǎn)入 find_all() 函數(shù)不是搜索內(nèi)置的參數(shù)名,那么搜索是就會將該參數(shù)對應(yīng)到屬性上去。下文的例子表示查找 id 為 google 的節(jié)點(diǎn)。

          搜索指定名字的屬性時可以使用的參數(shù)值包括:字符串,正則表達(dá)式,列表,True。也就是我們上文介紹過的過濾器。

          # demo 6
          tags = soup.find_all(id='google')
          print(tags[0]['href'])
          
          for tag in soup.find_all(id=True): # 查找所有包含 id 屬性的 TAG
          	print(tag['href'])
          
          #輸出結(jié)果
          https://www.google.com
          https://www.google.com
          https://www.baidu.com
          https://cn.bing.com
          

          2、按照 CSS 類名搜索,但是鏢師 CSS 的關(guān)鍵字 class 在 Python 中是內(nèi)置關(guān)鍵字,從 Beautiful Soup 4.1.1 版本開始,可以通過 class_ 參數(shù)搜索有指定 CSS 類名的 TAG:

          class_ 參數(shù)同樣接受不同類型的過濾器:字符串,正則表達(dá)式,方法,True。

          # demo 7
          tags = soup.find_all("a", class_="website")
          for tag in tags:
          	print(tag['href'])
          
          def has_seven_characters(css_class):
              return css_class is not None and len(css_class) == 7
          
          for tag in soup.find_all(class_=has_seven_characters):
          	print(tag['id'])
          
          #輸出結(jié)果
          https://www.google.com
          https://www.baidu.com
          https://cn.bing.com
          google
          baidu
          bing
          

          同時,因為 CSS 可以有多個值,所以我們可以分別搜索 CSS 中的每個值。

          # demo 8
          css_soup = BeautifulSoup('<p class="body strikeout"></p>', 'lxml')
          tags = css_soup.find_all("p", class_="strikeout")
          print(tags)
          
          #輸出結(jié)果
          [<p class="body strikeout"></p>]
          

          3、不僅可以按照標(biāo)簽和 CSS 來搜索整個文檔,還可以使用 text 再按照內(nèi)容來搜索。同時 text 還可以配合其他屬性一起來完成搜索任務(wù)。

          # demo 9
          tags = soup.find_all(text="Google")
          print("google : ", tags)
          
          tags = soup.find_all(text=["Baidu", "Bing"])
          print("baidu & bing : ", tags)
          
          tags = soup.find_all('a', text="Google")
          print("a[text=google] : ", tags)
          
          #輸出結(jié)果
          google :  ['Google']
          baidu & bing :  ['Baidu', 'Bing']
          a[text=google] :  [<a class="website" href="https://www.google.com" id="google">Google</a>]
          

          4、限制返回數(shù)量

          有時候文檔樹過于龐大,我們不想查查找整棵樹,只想查找指定數(shù)量的節(jié)點(diǎn),或者只想查找子節(jié)點(diǎn),而不想查找孫子節(jié)點(diǎn),指定 limit 或者 recursive 參數(shù)即可。

          # demo 10
          tag = soup.find_all("a", limit=1)
          print(tag)
          
          tags = soup.find_all("p", recursive=False)
          print(tags)
          
          #輸出結(jié)果
          [<a class="website" href="https://www.google.com" id="google">Google</a>]
          []
          

          因為該對象的兒子節(jié)點(diǎn)沒有 p 標(biāo)簽,所以返回的是空列表。

          find() 函數(shù)

          該函數(shù)只會返回一個結(jié)果,與 find_all(some_args, limit=1) 是等價的,唯一的區(qū)別就是該函數(shù)直接返回結(jié)果,而 find_all() 函數(shù)返回包含一個結(jié)果的列表。另外 find_all() 方法沒有找到目標(biāo)是返回空列表, find() 方法找不到目標(biāo)時,返回 None。除此之外使用上沒有其他差別。

          其他函數(shù)

          除了 find_all() 和 find() 外,Beautiful Soup 中還有 10 個用于搜索的 API,其中中五個用的是與 find_all() 相同的搜索參數(shù),另外 5 個與 find() 方法的搜索參數(shù)類似,區(qū)別僅是它們搜索文檔的范圍不同。

          find_parents() 和 find_parent() 用來搜索當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)。

          find_next_siblings() 和 find_next_sibling() 對在當(dāng)前節(jié)點(diǎn)后面解析的所有兄弟節(jié)點(diǎn)進(jìn)行迭代。

          find_previous_siblings() 和 find_previous_sibling() 對在當(dāng)前節(jié)點(diǎn)前面解析的所有兄弟節(jié)點(diǎn)進(jìn)行迭代。

          find_all_next() 和 find_next() 對當(dāng)前節(jié)點(diǎn)之后的 TAG 和字符串進(jìn)行迭代。

          find_all_previous() 和 find_previous() 對當(dāng)前節(jié)點(diǎn)之前的 TAG 和字符串進(jìn)行迭代。

          以上五組函數(shù)的區(qū)別僅僅是前者返回一個所有符合搜索條件的節(jié)點(diǎn)列表,而后者只返回第一個符合搜索條件的節(jié)點(diǎn)。

          因為這 10 個 API 的使用和 find_all() 與 find() 大同小異,所有i這里不再舉例,讀者可以自己探索。

          CSS 選擇器

          在 Tag 或 BeautifulSoup 對象的 .select() 方法中傳入字符串參數(shù)即可使用 CSS 選擇器的語法找到 TAG。

          1、通過某個標(biāo)簽逐層查找。

          # demo 11
          tags = soup.select("body a")
          for tag in tags:
          	print(tag['href'])
          
          #輸出結(jié)果
          https://www.google.com
          https://www.baidu.com
          https://cn.bing.com
          

          2、查找某個標(biāo)簽下的直接子標(biāo)簽

          # demo 12
          tags = soup.select("p > a")
          print(tags)
          
          tags = soup.select("p > #google")
          print(tags)
          
          #輸出結(jié)果
          [<a class="website" href="https://www.google.com" id="google">Google</a>, <a class="website" href="https://www.baidu.com" id="baidu">Baidu</a>, <a class="website" href="https://cn.bing.com" id="bing">Bing</a>]
          [<a class="website" href="https://www.google.com" id="google">Google</a>]
          

          3、通過 CSS 類名直接查找

          # demo 13
          tags = soup.select(".website")
          for tag in tags:
          	print(tag.string)
          
          #輸出結(jié)果
          Google
          Baidu
          Bing
          

          4、通過標(biāo)簽的 id 屬性查找

          # demo 14
          tags = soup.select("#google")
          print(tags)
          
          #輸出結(jié)果
          [<a class="website" href="https://www.google.com" id="google">Google</a>]
          

          5、通過屬性的值來查找


          關(guān)注本頭條號,每天堅持更新原創(chuàng)干貨技術(shù)文章。

          如需學(xué)習(xí)視頻,請在微信搜索公眾號“智傳網(wǎng)優(yōu)”直接開始自助視頻學(xué)習(xí)

          1. 前言

          本文主要講解如何在vim里查詢特定關(guān)鍵字。
          我是一個新的Linux和類unix操作系統(tǒng)用戶。如何在Vi或Vim中搜索和查詢單詞?如何在Vim或vi文本編輯器中查詢單詞?

          Vi和vim是一個針對Linux、macOS、Unix和*BSD系列操作系統(tǒng)的文本編輯器。Vim是一個免費(fèi)的開源文本編輯器。可以使用各種vi文本編輯器鍵進(jìn)行搜索。這個頁面展示了如何在Linux或類unix系統(tǒng)上運(yùn)行的vi或vim文本編輯器中搜索和查詢單詞。

          vim如何查詢關(guān)鍵字


          2. 在Vim或vi文本編輯器中查詢單詞

          使用Vim/vi搜索和查詢當(dāng)前單詞:
          在正常模式下,您可以向前或向后搜索。
          你可以在vim/vi中按下/然后輸入你的搜索語法/關(guān)鍵字來進(jìn)行查詢。
          在vi/vim中按下?然后輸入你的語法/關(guān)鍵字。
          在vim中查詢到單詞后,您可以按n鍵直接向后轉(zhuǎn)到單詞的下一個出現(xiàn)位置。按N鍵可以直接到相反的方向,即向前。

          讓我們來看一些例子。

          在vim/vi查詢關(guān)鍵字
          打開文件/etc/passwd:

          vi?/etc/passwd
          

          或者

          vim?/etc/passwd
          

          向前搜索一個名為root的單詞:

          按ESC鍵
          輸入/root
          按n向前搜索下一個出現(xiàn)的單詞root。你可以按N向后搜索。

          在vim/vi查詢關(guān)鍵字


          3. 如何在vim/vi中向后搜索和查詢關(guān)鍵字

          讓我們在當(dāng)前目錄下打開一個名為demo.txt的文件:

          vi?demo.txt
          

          或者

          vim?demo.txt
          

          反向查詢關(guān)鍵字
          反向查詢一個名為“bar”的關(guān)鍵字:

          反向查詢關(guān)鍵字


          按ESC鍵
          輸入?bar

          按N向后搜索下一個出現(xiàn)的單詞bar。你可以按n向前搜索。

          從命令行中搜索并打開文 vi / vim文本編輯器支持使用以下語法命令,直接開始執(zhí)行

          vi?+commandHere?fileName
          vim?+LineNumber?fileName
          vi?+/searchTermHere?fileName
          vi?+/LineNumberHere?fileName
          vim?+/LineNumberHere?fileName
          

          解釋:
          +commandHere表示+執(zhí)行的命令
          +LineNumber表示+行號
          +/searchTermHere表示+查詢參數(shù)
          vi +/LineNumberHere fileName表示+搜索行號
          vim也一樣

          例如:

          打開文件,進(jìn)入main()函數(shù),輸入:

          vim?+/main?filename-here
          

          接下來打開文件,轉(zhuǎn)到第42行,輸入:

          vim?+42?fileName
          

          4. 結(jié)論

          本文主要總結(jié)vi或vim的查詢操作技巧,通過本教程,您應(yīng)該有所了解了吧?

          這個頁面展示了如何使用Vim或vi文本編輯器來搜索單詞,包括使用*號來搜索當(dāng)前單詞。更多信息請參見vim幫助頁面。

          總結(jié)vi或vim的查詢操作技巧


          本文已同步至博客站,尊重原創(chuàng),轉(zhuǎn)載時請在正文中附帶以下鏈接:
          https://www.linuxrumen.com/rmxx/1566.html

          點(diǎn)擊了解更多,快速查看更多的技術(shù)文章列表。


          主站蜘蛛池模板: 国产精品日韩欧美一区二区三区| 激情综合一区二区三区| 少妇一夜三次一区二区| 亚洲成人一区二区| 久久久久人妻一区精品性色av| 精品一区二区久久久久久久网站| 自拍日韩亚洲一区在线| 国产福利一区二区在线视频| 国产成人久久精品区一区二区| 成人影片一区免费观看| 国产成人精品一区二三区 | 亚洲Av高清一区二区三区| 国产一区二区三精品久久久无广告| 欧洲亚洲综合一区二区三区| 91精品一区二区综合在线| 果冻传媒董小宛一区二区| 一区二区三区日本电影| 美女视频免费看一区二区| 日韩精品一区二区三区中文版| 国产美女在线一区二区三区| 亚洲一区二区三区精品视频 | 无码国产精品一区二区免费式直播| 久久99国产一区二区三区| 精品一区二区三区AV天堂| 精品女同一区二区三区在线| 国产精品亚洲综合一区在线观看| 亚洲av无码一区二区三区在线播放 | 日韩人妻一区二区三区免费| 日韩精品成人一区二区三区| 一本大道东京热无码一区| 国产午夜精品一区二区三区小说 | 亚洲国产系列一区二区三区| 99精品国产一区二区三区2021 | 亚洲国产国产综合一区首页| 久久久久人妻一区精品| 国产在线无码一区二区三区视频 | 久久久久人妻精品一区三寸 | 精品一区二区三区波多野结衣| 中文字幕精品一区影音先锋 | 国模少妇一区二区三区| 亚洲不卡av不卡一区二区|