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 日韩免费一级毛片,久久在线视频,成人在线观看国产

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          一款強大的本地文件內容搜索軟件,可搜索文件中的文字

          indows作為市場占有率最高的PC操作系統,它有著難以計數的桌面應用,搜索類工具自然不在話下,

          ?Everything

          ?Listary

          ?Wox

          但是,這些工具無一例外,都只能用于文件名的搜索,卻不能搜索文件的文本內容

          我們不得不承認一個事實,搜索文本內容是我們日常工作和學習中非常常見的一個應用場景。

          例如,當你寫了半天的文檔,隨手保存之后不知道放在哪里,你只記得其中片段的內容,你可以通過記憶力僅存的片段去搜索文件所在位置。

          例如,當你開發了一個龐大的工程,里面涉及幾十個代碼文件,你想知道有哪些文件中調用了某個庫,或者帶有你事先留下的標記,你可以通過字符串搜索的方式找到相應的文件。

          ...

          或許,一時之間無法想起,到底還有哪些場景會有這樣的需求。但是,總會在某一個時候遇到這種需求的時候卻無從下手。

          本文即將介紹的這款AnyTXT就可以有效的解決這樣一個難題,讓你的桌面擁有谷歌搜索引擎一樣的功能。

          AnyTXT

          AnyTXT搜索引擎是一個強大的本地數據全文搜索引擎,它之于PC桌面,就如同谷歌搜索引擎之于Web一樣,讓我們在短暫的時間內,搜索到系統內想要的內容。


          AnyTXT Searcher內置了強大的文檔解析引擎,可以在不安裝任何其他軟件的情況下解析常用文檔的文本,并結合內置的高速索引系統來存儲文本的元數據。

          因此,在使用AnyTXT的時候,它會花費幾十秒時間進行初始化,隨后你就可以快速的搜索自己想要的內容。這樣是它對比于其他類似軟件的優勢所在,雖然此類應用有很多,但是大多是是邊搜索、邊解析,這樣搜索效率極其低下。

          使用AnyTXT搜索器,您可以快速找到計算機上存在的任何包含指定字符串的文件。

          AnyTXT不僅在功能方面非常優秀,它在系統支持方面也非常全面,它支持Windows10、8、7、XP、Vista等版本的操作系統。

          如同前面提到的那樣,AnyTXT之所以能夠用于文件全文搜索,是由于它可以解析本地的文件內容,因此,它首先需要具備支持文件格式豐富這項特點。


          在文件格式支持方面,AnyTXT支持如下格式,

          ?普通格式:txt、cpp、html等.

          ?郵件:Microsoft Outlook.

          ?Office:Word、PPT、Excel.

          ?電子書:epub、mobi

          ?PDF

          可以看出,AnyTXT不僅支持PDF、Word、Excel、PPT這些日常工作和學習中經常接觸到的文件格式,還可以搜索cpp、html、py這些偏專業性的編碼文件,可以說在文件覆蓋方面非常全面。


          除了支持文件格式全面、豐富之外,它在其他方面做得也非常值得稱贊,例如,

          ?速度快:由于它事先解析本地文件并建立本地服務器,所以搜索速度非常迅速。

          ?高亮顯示:可以高亮顯示搜索結果,便于識別我么想要的內容。

          ?易于使用:安裝和使用都非常簡單,不需要配置額外的引擎或者輔助工具。

          ?隱私保護:整個索引和所有數據存儲在本地服務器上,所有數據均采用AES256高強度加密算法,確保數據安全。

          ?免費:AnyTXT完全免費使用

          者:HelloGitHub-追夢人物

          搜索是一個復雜的功能,但對于一些簡單的搜索任務,我們可以使用 Django Model 層提供的一些內置方法來完成。現在我們來為我們的博客提供一個簡單的搜索功能。

          概述

          博客文章通常包含標題和正文兩個部分。當用戶輸入某個關鍵詞進行搜索后,我們希望為用戶顯示標題和正文中含有被搜索關鍵詞的全部文章。整個搜索的過程如下:

          1. 用戶在搜素框中輸入搜索關鍵詞,假設為 “django”,然后用戶點擊了搜索按鈕提交其輸入的結果到服務器。
          2. 服務器接收到用戶輸入的搜索關鍵詞 “django” 后去數據庫查找文章標題和正文中含有該關鍵詞的全部文章。
          3. 服務器將查詢結果返回給用戶。

          整個過程就是這樣,下面來看看 Django 如何用實現這些過程。

          將關鍵詞提交給服務器

          先來回顧一下我們的 Django 博客的 Post(文章)模型:

          blog/models.py
          class Post(models.Model):
              # 標題
              title = models.CharField("標題", max_length=70)
              # 正文
              body = models.TextField("正文")
              
              # 其他屬性...
              
          	def __str__(self):
                  return self.title

          先看到第 1 步,用戶在搜索框輸入搜索關鍵詞,因此我們要在博客上為用戶提供一個搜索表單,HTML 表單代碼大概像這樣:

          templates/base.html
          <form role="search" method="get" id="searchform" action="{% url 'blog:search' %}">
            <input type="search" name="q" placeholder="搜索" required>
            <button type="submit"><span class="ion-ios-search-strong"></span></button>
          </form>

          特別注意這里 <input type="search" name="q" placeholder="搜索" required> 中的 name 屬性,當用戶在這個 input 中輸入搜索內容并提交表單后,鍵入的數據會以鍵值對的形式提交服務器,這個鍵的名字就是通過 name 屬性指定的。這樣服務器就可以根據 name 的值來取得用戶輸入的內容。

          用戶輸入了搜索關鍵詞并點擊了搜索按鈕后,數據就被發送給了 Django 后臺服務器。表單的 action 屬性的值為 {% url 'blog:search' %}(雖然我們還沒有寫這個視圖函數),表明用戶提交的結果將被發送給 blog 應用下 search 視圖函數對應的 URL。

          查找含有搜索關鍵詞的文章

          搜索的功能將由 search 視圖函數提供,代碼寫在 blog/views.py 里:

          blog/views.py
          from django.contrib import messages
          def search(request):
              q = request.GET.get('q')
              if not q:
                  error_msg = "請輸入搜索關鍵詞"
                  messages.add_message(request, messages.ERROR, error_msg, extra_tags='danger')
                  return redirect('blog:index')
              post_list = Post.objects.filter(Q(title__icontains=q) | Q(body__icontains=q))
              return render(request, 'blog/index.html', {'post_list': post_list})

          首先我們使用 request.GET.get('q') 獲取到用戶提交的搜索關鍵詞。用戶通過表單 get 方法提交的數據 Django 為我們保存在 request.GET 里,這是一個類似于 Python 字典的對象,所以我們使用 get 方法從字典里取出鍵 q 對應的值,即用戶的搜索關鍵詞。這里字典的鍵之所以叫 q 是因為我們的表單中搜索框 input 的 name 屬性的值是 q,如果修改了 name 屬性的值,那么這個鍵的名稱也要相應修改。

          接下來我們做了一個小小的校驗,如果用戶沒有輸入搜索關鍵詞而提交了表單,我們就無需執行查詢,我們給給用戶發一條錯誤提醒消息,這里使用了 django messages 應用,這在 交流的橋梁:評論功能中講過。然后將用戶重定向到首頁。這里的 redirect 函數也在那篇教程中講過。

          如果用戶輸入了搜索關鍵詞,我們就通過 filter 方法從數據庫里過濾出符合條件的所有文章。這里的過濾條件是 title__icontains=q,即 title 中包含(contains)關鍵字 q,前綴 i 表示不區分大小寫。這里 icontains 是查詢表達式(Field lookups),我們在之前也使用過其他類似的查詢表達式,其用法是在模型需要篩選的屬性后面跟上兩個下劃線。Django 內置了很多查詢表達式,建議過一遍 Django 官方留個印象,了解每個表達式的作用,以后碰到相關的需求就可以快速定位到文檔查詢其用途 Field lookups

          此外我們這里從 from django.db.models 中引入了一個新的東西:Q 對象。Q 對象用于包裝查詢表達式,其作用是為了提供復雜的查詢邏輯。例如這里 Q(title__icontains=q) | Q(body__icontains=q) 表示標題(title)含有關鍵詞 q 或者正文(body)含有關鍵詞 q ,或邏輯使用 | 符號。如果不用 Q 對象,就只能寫成 title__icontains=q, body__icontains=q,這就變成標題(title)含有關鍵詞 q 正文(body)含有關鍵詞 q,就達不到我們想要的目的。

          綁定 URL

          有了視圖函數后記得把視圖函數映射到相應了 URL,如下。

          blog/urls.py
          urlpatterns = [
              # 其他 url 配置
              path('search/', views.search, name='search'),
          ]

          大功告成,在導航欄嘗試輸入一些關鍵詞,看看效果吧!

          當然這樣的搜索功能是非常簡略的,難以滿足一些復雜的搜索需求。編寫一個搜索引擎是一個大工程,好在 django-haystack 這款第三方 app 為我們完成了全部工作。使用它我們可以實現更加復雜的搜索功能,比如全文檢索、按搜索相關度排序、關鍵字高亮等等類似于百度搜索的功能,功能十分強大。當然其使用也會復雜一些,下一篇教程將向大家介紹 django-haystack 結合 Elasticsearch 搜索引擎的使用方法。


          『講解開源項目系列』——讓對開源項目感興趣的人不再畏懼、讓開源項目的發起者不再孤單。跟著我們的文章,你會發現編程的樂趣、使用和發現參與開源項目如此簡單。歡迎留言聯系我們、加入我們,讓更多人愛上開源、貢獻開源

          astReport VCL 5新版發布會,2014-12-9 15:00網絡直播,免費參加 立即報名,參加者買FastReport旗下所有產品<6折>

          添加搜素框或網站搜索功能是為了方便用戶能夠輕松、快捷地找到自己需要的信息。因此,在網站中添加一個搜索框已經成為網頁設計的主流元素之一。添加一個搜索框到網站會使得用戶界面更加友好,也能幫助用戶輕松愉快地瀏覽。

          下面,小編收集了13個有用的CSS3,HTML5和jQuery搜索表單腳本來幫助大家從頭開始創建一個搜索框。希望能夠幫助到大家,讓我們一起來看看吧!

          脈動的CSS3輸入搜索框

          輸入搜索框帶有邊框和類似脈沖的陰影跳動。

          純CSS的建議搜索框

          這是一個使用純CSS構建擴展建議搜索框的簡單教程。

          CSS的擴大搜索框

          擴大搜索框是一個點擊或輸入東西時會變寬的一個簡單搜索框。

          使用CSS轉換擴大搜索欄

          我們將利用CSS轉換擴展了的搜索欄。搜索欄最初在視圖中隱藏的,當點擊搜索標簽時它能順利地擴展到視圖。

          在CSS客戶端全文檢索

          使用指數化數據屬性、動態樣式和CSS3選擇器的搜索功能,可以直接實現在CSS的全文檢索,而不是JavaScript客戶端。

          用CSS3和HTML創建搜索框下拉菜單

          在本教程中,我們將創建一個平面式的導航和Square UI的搜索下拉菜單。

          如何編寫一個擴展HTML5/ CSS3的搜索輸入字段

          在本教程中我們使用兩種不同的方法來構建一個擴大搜索字段。

          花式搜索框

          這是一個奇特的搜索框,非常有意思!

          搜索欄動畫

          CriteriaSearchBox

          一種提示選擇搜索,像商店類別的搜索框。

          jQuery和CSS3的"下一步級別"動畫搜索表單

          基本的jQuery搜索/過濾器

          靈活的搜索框

          一個靈活的搜索輸入和內部固定寬度的提交按鈕來固定邊界的寬度。

          慧都聯合葡萄城產品年終大惠,第二套起,買一送一!11月17日-12月31日,機會不容錯過!

          本站文章除注明轉載外,均為本站原創或翻譯


          主站蜘蛛池模板: 久久亚洲色一区二区三区| 综合无码一区二区三区| 国产精品第一区揄拍| 日韩免费视频一区| 国产精华液一区二区区别大吗| 无码人妻久久一区二区三区免费| 成人无号精品一区二区三区| 一区二区三区视频网站| 日韩精品成人一区二区三区| 精品无人乱码一区二区三区| 免费日本一区二区| 成人国内精品久久久久一区| 色多多免费视频观看区一区| 亚洲av日韩综合一区二区三区| 精品一区二区三区东京热 | 一区二区三区无码被窝影院| 国产精品免费一区二区三区| 国产视频一区二区| 无码人妻精品一区二区三区久久久 | 国产一区在线播放| 成人H动漫精品一区二区| 亚洲无圣光一区二区| 亚洲线精品一区二区三区| 国产午夜精品一区二区| 亚洲中文字幕丝袜制服一区 | 在线精品一区二区三区电影| 亚洲国产系列一区二区三区 | 精品无码一区二区三区水蜜桃| 精品少妇人妻AV一区二区| 日本内射精品一区二区视频| 国产一区二区三区久久| 国产成人精品a视频一区| 日韩av片无码一区二区三区不卡 | 国产亚洲3p无码一区二区| 在线精品亚洲一区二区三区 | 亚洲性无码一区二区三区| 亚洲一区二区三区在线观看蜜桃| 78成人精品电影在线播放日韩精品电影一区亚洲 | 日本在线观看一区二区三区| 日本美女一区二区三区| 无码人妻一区二区三区在线水卜樱|