国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python爬蟲之自制英漢字典

graf / 1909人閱讀

摘要:筆者看到了,覺得還蠻有意思的,因此,決定自己也寫一個玩玩首先我們的爬蟲要能將英語單詞翻譯成中文,因此,我們就需要一個網站幫助我們做這件事情。

??最近在微信公眾號中看到有人用Python做了一個爬蟲,可以將輸入的英語單詞翻譯成中文,或者把中文詞語翻譯成英語單詞。筆者看到了,覺得還蠻有意思的,因此,決定自己也寫一個玩玩~~
??首先我們的爬蟲要能將英語單詞翻譯成中文,因此,我們就需要一個網站幫助我們做這件事情。于是,我們選定有道詞典,網址為: http://dict.youdao.com/ 。在該網頁中我們輸入單詞nice,就會出來這個單詞的意思,如下圖:

??針對上述過程,對于熟悉爬蟲的讀者來說,是不難完成將輸入的單詞的中文意思從網頁中提取出來的。筆者的代碼如下:

import requests
from bs4 import BeautifulSoup

# get word from Command line
word = input("Enter a word (enter "q" to exit): ")

# main body
while word != "q": # "q" to exit
    try:
        # 利用GET獲取輸入單詞的網頁信息
        r = requests.get(url="http://dict.youdao.com/w/%s/#keyfrom=dict2.top"%word)
        # 利用BeautifulSoup將獲取到的文本解析成HTML
        soup = BeautifulSoup(r.text, "lxml")
        # 獲取字典的標簽內容
        s = soup.find(class_="trans-container")("ul")[0]("li")
        # 輸出字典的具體內容
        for item in s:
            if item.text:
                print(item.text)
        print("="*40+"
")
    except Exception:
        print("Sorry, there is a error!
")
    finally:
        word = input( "Enter a word (enter "q" to exit): ")

運行上述Python代碼,結果如下:

??上述過程無疑是簡單的,下面,我們增加一些新的功能,如下:

將Python代碼打包成exe文件;

在CMD中輸出單詞的中文意思時,輸出為彩色文字。

??利用ctypes模塊,我們可以對Windows系統進行簡單操作,而利用pyinstaller模塊,我們可以將自己的Python代碼打包成exe文件。
??改修的Python代碼如下:

import requests
from bs4 import BeautifulSoup
import random
import ctypes

STD_INPUT_HANDLE = -10
STD_OUTPUT_HANDLE = -11
STD_ERROR_HANDLE = -12

FOREGROUND_DARKBLUE = 0x01  # 暗藍色
FOREGROUND_DARKGREEN = 0x02  # 暗綠色
FOREGROUND_DARKSKYBLUE = 0x03  # 暗天藍色
FOREGROUND_DARKRED = 0x04  # 暗紅色
FOREGROUND_DARKPINK = 0x05  # 暗粉紅色
FOREGROUND_DARKYELLOW = 0x06  # 暗黃色
FOREGROUND_DARKWHITE = 0x07  # 暗白色
FOREGROUND_DARKGRAY = 0x08  # 暗灰色
FOREGROUND_BLUE = 0x09  # 藍色
FOREGROUND_GREEN = 0x0a  # 綠色
FOREGROUND_SKYBLUE = 0x0b  # 天藍色
FOREGROUND_RED = 0x0c  # 紅色
FOREGROUND_PINK = 0x0d  # 粉紅色
FOREGROUND_YELLOW = 0x0e  # 黃色
FOREGROUND_WHITE = 0x0f  # 白色

std_out_handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)

# 設置文字顏色
def set_cmd_text_color(color, handle=std_out_handle):
    Bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color)
    return Bool

# 重置文字顏色為白色
def resetColor():
    set_cmd_text_color(FOREGROUND_DARKWHITE)

# 以指定顏色輸出文字
def cprint(mess, color):
    color_dict = {"暗藍色": FOREGROUND_DARKBLUE,
                  "暗綠色": FOREGROUND_DARKGREEN,
                  "暗天藍色": FOREGROUND_DARKSKYBLUE,
                  "暗紅色": FOREGROUND_DARKRED,
                  "暗粉紅色": FOREGROUND_DARKPINK,
                  "暗黃色": FOREGROUND_DARKYELLOW,
                  "暗白色": FOREGROUND_DARKWHITE,
                  "暗灰色": FOREGROUND_DARKGRAY,
                  "藍色": FOREGROUND_BLUE,
                  "綠色": FOREGROUND_GREEN,
                  "天藍色": FOREGROUND_SKYBLUE,
                  "紅色": FOREGROUND_RED,
                  "粉紅色": FOREGROUND_PINK,
                  "黃色": FOREGROUND_YELLOW,
                  "白色": FOREGROUND_WHITE
                 }
    set_cmd_text_color(color_dict[color])
    print(mess)
    resetColor()

# 顏色列表
color_list = ["暗藍色","暗綠色","暗天藍色","暗紅色","暗粉紅色","暗黃色","暗白色","暗灰色",
              "藍色","綠色","天藍色","紅色","粉紅色","黃色","白色"]

# print information of this application
print("#"*60)
print("This app is used for translating English word to Chineses!")
print("#"*60+"
")

# get word from Command line
word = input("Enter a word (enter "q" to exit): ")

# main body
while word != "q": # "q" to exit
    try:
        # 利用GET獲取輸入單詞的網頁信息
        r = requests.get(url="http://dict.youdao.com/w/%s/#keyfrom=dict2.top"%word)
        # 利用BeautifulSoup將獲取到的文本解析成HTML
        soup = BeautifulSoup(r.text, "lxml")
        # 獲取字典的標簽內容
        s = soup.find(class_="trans-container")("ul")[0]("li")
        # 隨機選擇輸出的顏色
        random.shuffle(color_list)
        # 輸出字典的具體內容
        for item in s:
            if item.text:
                cprint(item.text, color_list[0])
        print("="*40+"
")
    except Exception:
        print("Sorry, there is a error!
")
    finally:
        word = input( "Enter a word (enter "q" to exit): ")

利用pyinstaller模塊,將上述程序打包為exe文件。比如我們剛才的Python代碼的文件名為English_2_Chinese_dict.py,位于E盤下的eng_2_chn文件夾下,我們可以在CMD中先切換到E盤下eng_2_chn文件夾,再輸入以下命令:

pyinstaller -F English_2_Chinese_dict.py

這樣就會生成一些文件,如下圖:

我們想要的生成的exe文件位于dist文件夾下,運行該exe文件,并測試,如下:

??這樣我們也就實現了上述新增的功能,能夠更加方便地運行我們的程序。怎么樣,是不是覺得Python爬蟲酷酷的?不知作為新手的你,有沒有一點心動呢?趕緊學起來吧,哈哈~~
??本次分享到此結束,如有任何問題,請在下面評論哦~~

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41767.html

相關文章

  • Java爬蟲利用Jsoup自制簡單的搜索引擎

    摘要:的官方網址為,其使用手冊網址為本次分享將實現的功能為利用爬取某個搜索詞語暫僅限英文的百度百科的介紹部分,具體的功能介紹可以參考博客爬蟲自制簡單的搜索引擎。 ??Jsoup 是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內容。它提供了一套非常省力的API,可通過DOM,CSS以及類似于jQuery的操作方法來取出和操作數據。Jsoup的官方網址為: https:...

    GHOST_349178 評論0 收藏0
  • 自制簡單的詩歌搜索系統

    摘要:項目簡介本文將介紹一個筆者自己的項目自制簡單的詩歌搜索系統。該項目使用的模塊為其中,模塊和模塊用來制作爬蟲,爬取網上的詩歌。 項目簡介 ??本文將介紹一個筆者自己的項目:自制簡單的詩歌搜索系統。該系統主要的實現功能如下:指定一個關鍵詞,檢索出包含這個關鍵詞的詩歌,比如關鍵詞為白云,則檢索出的詩歌可以為王維的《送別》,內容為下馬飲君酒,問君何所之?君言不得意,歸臥南山陲。但去莫復問,白云...

    SegmentFault 評論0 收藏0
  • 首次公開,整理12年積累的博客收藏夾,零距離展示《收藏夾吃灰》系列博客

    摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...

    Harriet666 評論0 收藏0
  • Python爬蟲理論cookie驗證,不回顧下歷史,套路都不知道怎么來的!

    摘要:在發明之初,為了幫助服務器同步網頁上的用戶信息,同時保存用戶操作,以此減輕服務器壓力。由正在瀏覽的網站創建的被稱為第一方。這些第三方怎么來的呢他們又有什么作用了。寫在最后了解歷史,有助于,我們更好的定位問題。 ...

    fuyi501 評論0 收藏0
  • Spring Boot入門(13)自制音樂平臺

    摘要:經過筆者這幾天的辛勤勞作其實就是苦逼地碼代碼,一個新的網站已經上線啦該網站是用工具寫的,主要實現的功能如下根據歌曲名稱和音樂平臺搜索歌曲,并實現歌曲的在線播放歌曲的下載功能網頁統計量功能開發歷史介紹。 ??經過筆者這幾天的辛勤勞作(其實就是苦逼地碼代碼),一個新的網站已經上線啦!該網站是用Spring Boot工具寫的,主要實現的功能如下: 根據歌曲名稱和音樂平臺搜索歌曲,并實現歌曲...

    Mr_zhang 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<