用Python 實現手機自動答題,這下百萬答題遊戲誰也玩不過我!

2020-11-22 站長之家

聲明:本文來自於微信公眾號  AI科技大本營(ID:rgznai100),作者:李秋鍵,授權站長之家轉載發布。

引言

如果談到這幾年手機上各平臺最常見的引流福利,必然是答題贏大獎系列小遊戲了。像什麼頭號英雄,百萬玩家之類的,充斥在我們生活中,同時也成為了我們生活中常見的娛樂方式。

但是有時候就會想,能不能實現手機自動答題呢,畢竟網絡上是充斥著很多問題的答案,自己手動搜題速度顯然來不及。答案是當然可以,今天我們就來用手機連接電腦,讓電腦自動搜索答案,省時省力省心。

這一項目中主要用到了文字識別瀏覽器操作,其中文字識別是利用計算機自動識別字符的技術,是模式識別應用的一個重要領域。

人們在生產和生活中,要處理大量的文字、報表和文本。為了減輕人們的勞動,提高處理效率,50年代開始探討一般文字識別方法,並研製出光學字符識別器。60年代出現了採用磁性墨水和特殊字體的實用機器。

60年代後期,出現了多種字體和手寫體文字識別機,其識別精度和機器性能都基本上能滿足要求。如用於信函分揀的手寫體數字識別機和印刷體英文數字識別機。70年代主要研究文字識別的基本理論和研製高性能的文字識別機,並著重於漢字識別的研究。

基於一些基礎認識,下面我們先來思考下,實現這一項目的整體思路:

做這一項目首先會存在以下疑問:

1、 我們要讓手機連接電腦,但是怎麼讓電腦自動控制手機呢

2、 手機上是顯示文字的,但是怎麼讓電腦看懂你手機上的文字呢

3、 電腦知道了問題後如何藉助網絡搜答案呢?

針對上面的問題,我們大概想了下思路:

1、 讓電腦能夠控制手機,一般都是利用usb把手機連接到電腦上。然後藉助ADB實現對手機的調控,包括點觸、滑動、截圖等等功能。

2、 讓電腦能夠看懂文字,必然需要對手機屏幕截圖,然後對截圖中的文字識別即可

3、 讓電腦操控瀏覽器搜題,用python的庫即可實現

了解了整體思路後,下面開始我們的實驗。

實驗前的準備

首先我們使用的python版本是3.6. 5 所用到的庫有os,Python 中os模塊包含普遍的作業系統功能。

如果你希望你的程序能夠與平臺無關的話,這個模塊是尤為重要的;pillow庫中Image模塊是在Python PIL圖像處理中常見的模塊,對圖像進行基礎操作的功能基本都包含於此模塊內;Pytesseract模塊是文字識別模塊;webbrowser是實現瀏覽器的操作;time庫實現等待下一題之間的間隔時間等待。

自動獲取手機文字

1、利用ADB控制手機:

ADB是安卓手機常見的調控插件,我們需要將手機數據線和電腦連接,然後藉助adb實現對手機的截屏並保存在指定路徑。Adb控制指令如下:

截取屏幕,圖片命名為screen.png :

os.system("adb shell /system/bin/screencap -p /sdcard/screen.png") #截取屏幕,圖片命名為screen.png

將截圖保存到電腦,路徑為:C:/Users/jia/Desktop

os.system("adb pull /sdcard/screen.png C:/Users/jia/Desktop")   #將截圖保存到電腦在桌面

模擬點擊屏幕,x y分別為點擊處的像素

os.system("adb shell input tap {}{}".format(x,y))#x ,y為點擊處的像素點

詳細代碼如下:

#adb手機截圖def get_image():os.system('adb shell screencap -p /sdcard/image.png')os.system('adb pull /sdcard/image.png .')xigua_size = (150,530,1800,800)

2、對圖片文字識別:

文字識別部分為了方便快速,我們直接使用pytesseract文字識別即可。其中主要用的函數是pytesseract.image_to_strin。

pytesser裡包含了tesseract.exe和英語的數據包(默認只識別英文),還有一些示例圖片,所以解壓縮後即可使用。

同時模塊需要PIL庫的支持。

如何識別率低的問題?

可以增強圖片的顯示效果,或者將其轉換為黑白的,這樣可以使其識別率提升不少。

識別其他語言?

tesseract是一個命令行下運行的程序,參數如下:

tesseract  imagename outbase [-l  lang]  [-psm N]  [configfile...]

imagename是輸入的image的名字,outbase是輸出的文本的名字,默認為outbase.txt ,-l  lang  是定義要識別的的語言,默認為英文。

詳細代碼如下:

#讀取圖像get_image()img=Image.open('image.png')img_que = img.crop(xigua_size)#識別截圖文字question=pytesseract.image_to_string(img_que,lang='chi_sim')

獲取文字後,對文字做一些處理,去除沒必要的信息。

question=question.replace(' ','').replace('\n','')que = question[question.find('.')+1: question.find('?')]

自動搜題的實現

1、瀏覽器操作:

在識別問題的基礎上,我們通過webbrowser打開瀏覽器,並操作瀏覽器搜索答案。

其中主要用到的方法如下:

webbrowser.open(url[, new=0[, autoraise=1]])

這個方法是在默認的瀏覽器中顯示url, 如果new = 0, 那麼url會在同一個瀏覽器窗口下打開,如果new = 1, 會打開一個新的窗口,如果new = 2, 會打開一個新的tab, 如果autoraise = true, 窗口會自動增長。

webbrowser.open_new(url)

在默認瀏覽器中打開一個新的窗口來顯示url, 否則,在僅有的瀏覽器窗口中打開url。

webbrowser.open_new_tab(url)

在默認瀏覽器中當開一個新的tab來顯示url, 否則跟open_new()一樣、

webbrowser.get([name])

根據name返回一個瀏覽器對象,如果name為空,則返回默認的瀏覽器

webbrowser.register(name, construtor[, instance])

註冊一個名字為name的瀏覽器,如果這個瀏覽器類型被註冊就可以用get()方法來獲取。

詳細代碼如下: 

到這裡,我們整體的程序就搭建完成,下面為我們程序的運行結果:

試試用這個方法參加《百萬答題》類小遊戲,或許下一個百萬獲獎人就是你。

作者介紹:

李秋鍵,CSDN 博客專家,CSDN達人課作者。碩士在讀於中國礦業大學,開發有taptap安卓武俠遊戲一部,vip視頻解析,文意轉換工具,寫作機器人等項目,發表論文若干,多次高數競賽獲獎等等。

相關焦點

  • 用Python 實現手機自動答題,這下百萬答題遊戲誰也玩不過我
    作者 | 李秋鍵責編 | Carol引言如果談到這幾年手機上各平臺最常見的引流福利,必然是答題贏大獎系列小遊戲了。像什麼頭號英雄,百萬玩家之類的,充斥在我們生活中,同時也成為了我們生活中常見的娛樂方式。
  • 直播答題,我在第12題掛了,意外發現這幾個套路
    文/ 李惠琳剛進入新年不久,「國民老公」王思聰一條「我撒幣,我樂意」的微博,就讓直播有獎答題成了2018年第一個爆款產品。用戶只需在APP內參與直播互動答題,就有機會瓜分獎金。身邊幾乎所有人都在獎金的誘惑下玩得不亦樂乎,巨頭們也接連入場,一時間,這款產品從朋友圈刷屏到微博。
  • 《百萬英雄》十二道題目答題助手
    《百萬英雄》還設置了「復活」機制:分享你的邀請碼給朋友,兩個人都可以擁有一張復活卡。答題過程中,如果答錯了,就可以使用復活卡進行復活。 百萬英雄答題輔助 題庫匯總 邀請碼怎麼用 作弊方法 復活卡怎麼得 怎麼答題 開掛神器 復活卡生成器 輔助搜索工具 自動答題 題目前瞻 1、《西遊記》中孫悟空能變化成多少種形態? 答案:72種 2、郎朗是哪種樂器的演奏家? 答案:鋼琴 3、詹姆斯。
  • 最強大腦、答題神器!叉叉助手輔助腳本成就《百萬英雄》
    原標題:最強大腦、答題神器!叉叉助手輔助腳本成就《百萬英雄》   「知識變現、一夜暴富!」西瓜視頻旗下的《百萬英雄》正是這麼一款滿足大眾觀念中「知識就是財富」的在線答題直播app,《百萬英雄》用五十萬的巨額獎金、符合大眾知識面的問題、無參與門檻、互動性強的直播形式,成為適用於全民娛樂的遊戲新形式。但如何在十二道題中全身而退,分得獎金?叉叉助手智能同步答題輔助腳本無疑是你的最佳答案,成就百萬英雄,還看叉叉助手。
  • 答題類遊戲風靡 專家:人的精神需求被極大滿足
    西部網訊(記者 熊惠玲) 對於遊戲,人們總是「三分鐘」熱度。最近你可能發現身邊的人不再熱衷於「吃雞」,或者「跳一跳」,而是被「衝頂大會」「芝士超人」「百萬英雄」「頭腦王者」等幾款答題遊戲吸了注意力,下載APP、答題、瓜分獎金,簡單粗暴的套路卻掀起了全民的狂歡。
  • 直播答題贏錢越來越少?作弊「套路」看完驚呆…
    淘寶出現「復活卡」生意,商家無本萬利  按照部分答題平臺的規則,讓好友填寫自己的邀請碼,兩人可各得一張復活卡。復活卡可用來抵消一次錯誤答案,這背後顯然是直播答題平臺藉助人際推廣的小算盤。  試想一下,只要多一張復活卡,你就多一次分得數十元甚至上百元人民幣的機會,誰不想要復活卡?
  • 直播答題是新風口還是黑洞?作弊神器已出現
    直播答題遊戲無疑已經搶佔了2018年的第一個風口。在短時間內的爆紅也引發了很多爭議和質疑。每場答題參與人數與獎金金額是否真實?各種作弊軟體是否真的能幫助答題作弊?各平臺瘋狂撒幣還能持續多久?業內認為,直播答題在燒錢狂歡下亂象頻生,還需有關部門監管。新年伊始,直播答題成為網際網路行業首個現象級事件。
  • 花椒百萬作戰答題題庫全部題目答案分享
    花椒百萬作戰答題贏現金有哪些題目?花椒百萬作戰答題贏現金有沒有題庫?下面小編就給大家分享一下花椒百萬作戰答題的全部題目內容哦,趕緊來熟悉熟悉題目好作戰吧!  花椒百萬作戰題目大全  1.哪部動畫片的男主角不知道全名?  答案:涼宮春日的憂鬱  2. Key社有大魔王之稱的腳本作家是誰?
  • 如果《最強大腦》選手參加答題遊戲「百萬英雄」,獎金如何瓜分?
    如果《最強大腦》選手參加答題遊戲「百萬英雄」,獎金如何瓜分? 2018新年伊始先給大家問聲好,最近小編被各種「搶錢」答題測試弄得懷疑智商,什麼撲克牌黑桃Q人物原型、什麼豆腐起源地,甚至還問到了布穀鳥學名!
  • 超好玩的答題遊戲推薦:用《最強大腦》填最深的坑!
    今天給大家推薦一款超好玩的答題遊戲《最強大腦》。《最強大腦》是一款微信小程序,是一款集合了冷知識、腦筋急轉彎、反應能力的答題遊戲。遊戲中到處都是「坑」,而你要做的,就是用「最強大腦」填最深的坑!
  • 答題APP能賺錢?當你沉迷吃雞時,人家小學生已經賺了第一桶金
    「衝頂大會」難度偏高,但是「百萬英雄」和「芝士超人」簡單場,難度真的有點像小學生考試。。。。誰說知識不能賺錢,讀書沒卵用,這不,這些APP的誕生,也不用去搬磚了,直接可以知識變現了。。。榜單第一名收入已經100多萬了.......聽上去是不是很有誘惑?是不是蠢蠢欲動?是不是有點像國外的電影《貧民窟的百萬富翁》?
  • 直播答題:是吹起的風口還是燒錢的黑洞?
    直播答題被認為是2018年新風口,動輒百萬的獎金吸引著不少眼球,但經由「燒錢」而起的模式,是否只是曇花一現,未來盈利模式如何仍待探究。2018年伊始,網絡直播答題闖關活動風起雲湧,動輒百萬獎金的狂撒幣模式,著實牽住了參與者的注意力,短期來看,已有成千上百萬網民參與其中。與此同時,這類無門檻、撒獎金的在線活動也吸引了網易、今日頭條、百度等等巨頭入局。
  • 《閃耀暖暖》入夜派對答題答案有哪些 入夜派對答題答案大全
    導 讀 閃耀暖暖答題攻略大全是答題玩法,正確回答問題後能獲取豐厚獎勵喔,那麼閃耀暖暖答題怎麼玩、閃耀暖暖答題答案匯總呢
  • 《UC全民答題》題庫答案大全 自動答題神器介紹
    這個答題活動是UC退出的一個全民答題的活動,大家都在問這個UC全民答題活動的題目有哪些?小編就為大家帶來了UC全民答題題目答案匯總,希望對小夥伴有所幫助! UC全民答題題... UC全民答題題目有哪些?這個答題活動是UC退出的一個全民答題的活動,大家都在問這個UC全民答題活動的題目有哪些?
  • 沒在《永恆魔法》玩過答題 都不敢說是最強大腦
    激燃戰場、開荒式團本讓玩家們流連忘返,而《永恆魔法》中還潛藏考驗玩家智慧的答題玩法,其精彩度絲毫不輸當下全民直播答題狂潮。沒玩過《永恆魔法》答題,都不敢說自己是最強大腦,檢驗腦力的時刻到了!方為真玩家每天都在玩《永恆魔法》的玩家,敢說自己對遊戲無所不知嗎?
  • 煙雨江湖天刀門答題問題答案一覽
    時間:2020-08-18 煙雨江湖天刀門答題怎麼玩?天刀門答題問題有哪些?天刀門答題答案是什麼?遊戲中天刀門裡面的話是有一些答題玩法的,也就是需要我們回答一些問題就可以得到獎勵了哦,但是有些問題還是有一定的難度的,不是所有人都會的,下面由小編為大家帶來詳細介紹吧!
  • 答題紅包滿天飛《原始守衛戰》石器福利送不停
    貓玩互娛2018年年度手遊巨製《原始守衛戰》嗨翻尼斯大陸,年底隆重推出的紅包活動完美收官。本次答題活動紅包滿天飛,吸引了大批石器玩家參與!作為當下最熱門的石器時代手遊, 《原始守衛戰》不肝不氪金良心運營 , 絕對讓你愛不釋手!
  • 抖音王者之戰誰是英雄答題答案 王者之戰答題領皮膚真的假的
    抖音王者之戰答題答案選什麼?作為益智挑戰,還能拿到線上福利。通關選擇回答,就能展開體驗,輕鬆進行活動考驗。  抖音王者之戰答題領皮膚是真的假的  抖音王者之戰答題獲得皮膚是真的,特意為大家算了一下,每次全部答對的情況下可以獲得6張點券,一天有3次機會,而兌換一個禮品至少需要20點券,還是比較好得到的,也是真的可以獲得皮膚。  如果大家想要獲得更加高級的皮膚,需要60點券,大概要十天時間,總的來看還是不是很划算,耗時長。
  • IND4答題小遊戲第二賽季強勢來襲!
    答題闖關,激活大腦,和國內最棒的一群汽車工程師PK知識儲備,一起來挑戰吧! 「汽車人最強大腦」第二賽季強勢來襲!此遊戲為熱愛汽車知識的你設計,為身處汽車行業的你設計,為不斷在IND4汽車人充電的你設計。 想拿獎品,來汽車人最強大腦!
  • 閃耀暖暖聯盟答題攻略:新版聯盟答題答案大全[多圖]
    閃耀暖暖聯盟答題的答案是什麼?最新的聯盟答題又更新了,玩家們可以參與答題活動進行挑戰,聯盟答題中有很多我們常見的問題,下面小編將這些答題的答案分享給大家,需要這些答案的玩家可以和小編一起來看看具體內容。