利用Python通過獲取剪切板數據實現百度劃詞搜索功能

一、實現劃詞功能

說是劃詞翻譯,實際上我們是通過獲取用戶的剪切板內容,通過一系列的操作得到的。首先呢,我們就先實現如何獲取剪切板內容的程序

在這裡插入圖片描述

首先先在桌面創建一個文件夾,命名為“MoveSearch”文件夾

在這裡插入圖片描述

之後我們雙擊點入這個文件夾,創建一個“MainWindow.py”的程序和“Clipborad.py”這兩個程序

在這裡插入圖片描述

我們這裡使用Sublime進行操作演示,我們點開“ClipBoard.py”的文件,然後我們按照下面的圖片添加文件夾到工作路徑

在這裡插入圖片描述
在這裡插入圖片描述

當出現上面這樣的界面時候,我們已經成功將這個文件夾加入瞭我們的開發路徑

接下來,我們在PyPi上面檢索我們想要的模塊,通過查找,我們發現這裡有一個模塊符合我們的要求,所以我們可以將它下載下來

在這裡插入圖片描述

輸入命令pip install pyperclip,這樣子我們應該就可以安裝瞭。我們在CMD中嘗試安裝的代碼

在這裡插入圖片描述

在這裡呢,我已經成功安裝瞭代碼的瞭,接下來我們嘗試一下庫的功能,我們先建立一個循環,一直返回我們從剪切板獲取的數據

import pyperclip as pc 
import time

while True:
	 copy_text = pc.paste()
	 print(copy_text)

	 time.sleep(1)

我們首先導入模塊,然後創建一個循環,繼續創建鍵盤輸入,最後打印鍵盤輸入的值,為瞭讓程序運行的時間不消耗系統的大量內存,於是我們加上Time模塊讓程序進行一定時間的休眠,實現合理分配

在這裡插入圖片描述

我們通過上面的程序就可以看到,我們的程序將我們的值返回瞭回來。

其實我們可以發現,我們的復制程序非常簡單,所以我們我們返回主程序編寫代碼。

在這裡插入圖片描述

我們現在要編寫一個打開外部網頁的辦法。這個時候呢有很多種選擇,那麼這裡我選擇大概是大傢比較常用的庫——PyQt5來操作。其實最近呢QT也開發瞭一個新的Python接口,有興趣的小夥伴們可以修改代碼做一些嘗試

我們先導入程序運行所需要的模塊

在這裡插入圖片描述

我們接下來編寫一個類,進行我們的窗口處理

在這裡插入圖片描述

首先我們先設置窗口的標題,接下來設置窗口出現的位置和它的大小,接下來使用瀏覽器文件創建它。在這裡我們並沒有寫出訪問的鏈接,因為我們還不知道百度的搜索規則

在這裡插入圖片描述

使用百度進行搜索後,觀察地址欄的變化,可以看到,wd便是接受參數的值

在這裡插入圖片描述

編寫代碼,將代碼URL改成這樣'https://www.baidu.com/s?ie=UTF-8&wd='+str(word)

整個代碼也就變成瞭這樣,接下來我們在循環中調用窗口

在這裡插入圖片描述

傳參進入窗口的類當中,我們先運行測試一下

在這裡插入圖片描述

若我們的剪切板中有值,我們可以發現我們的程序可以打開網頁

import pyperclip as pc 
import time
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebEngineWidgets import *

class MainWindow(QMainWindow):
	def __init__(self,word):
		super(QMainWindow,self).__init__()
		self.setWindowTitle("百度劃詞搜索")
		self.setGeometry(700,600,1200,1200)
		self.browser = QWebEngineView()
		self.browser.load(QUrl('https://www.baidu.com/s?ie=UTF-8&wd='+str(word)))
		self.setCentralWidget(self.browser)


# 首先我們先創建一個循環
while True:
	# 獲取系統粘貼板的值
	copy_text = pc.paste()

	# 準備打開網站
	app = QApplication(sys.argv)
	win = MainWindow(copy_text)
	win.show()
	app.exec()

	time.sleep(5)

二、運行錯誤

我們可以發現程序運行時會出現好多個錯誤

我們的類創建的不成功

我們第二次進行復制的時候我們會發現。出現瞭這樣的報錯QWidget: Must construct a QApplication before a QWidget

在這裡插入圖片描述

2.我們程序運行後無法繼續使用網頁

在這裡插入圖片描述

三、解決問題

這個程序呢我最近還是要重新思考一下思路,發現很多方式都不是特別正確,所以可以移步到我的另一篇博客。那麼這片博客就這樣簡單結束瞭哈!

到此這篇關於利用Python通過獲取剪切板數據實現百度劃詞搜索功能的文章就介紹到這瞭,更多相關Python實現百度劃詞搜索功能內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: