-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
3、python爬取驗(yàn)證碼圖片,遇到驗(yàn)證碼src屬性為完整的網(wǎng)址應(yīng)該怎么做?
4、JSP驗(yàn)證碼刷新報(bào)錯(cuò):java.net.SocketException: Connection reset by peer: socket write error
編譯源代碼
運(yùn)行單元測(cè)試和集成測(cè)試
執(zhí)行靜態(tài)代碼分析、生成分析報(bào)告
創(chuàng)建發(fā)布版本
部署到目標(biāo)環(huán)境
部署傳遞過程
執(zhí)行冒煙測(cè)試和自動(dòng)功能測(cè)試
如果你手工去執(zhí)行每一個(gè)步驟無疑效率比較低而且容易出錯(cuò),有了自動(dòng)化構(gòu)建你只需要自定義你的構(gòu)建邏輯,剩下的事情交給工具去完成。
雖然兩者都是項(xiàng)目工具,但是maven現(xiàn)在已經(jīng)是行業(yè)標(biāo)準(zhǔn),Gradle是后起之秀,很多人對(duì)他的了解都是從android studio中得到的,Gradle拋棄了Maven的基于XML的繁瑣配置,眾所周知XML的閱讀體驗(yàn)比較差,對(duì)于機(jī)器來說雖然容易識(shí)別,但畢竟是由人去維護(hù)的。取而代之的是Gradle采用了領(lǐng)域特定語(yǔ)言Groovy的配置,大大簡(jiǎn)化了構(gòu)建代碼的行數(shù),比如在Maven中你要引入一個(gè)依賴:
<properties>
<kaptcha.version>2.3</kaptcha.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.code.kaptcha</groupId>
<artifactId>kaptcha</artifactId>
<version>${kaptcha.version}</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
<properties>
<kaptcha.version>2.3</kaptcha.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.code.kaptcha</groupId>
<artifactId>kaptcha</artifactId>
<version>${kaptcha.version}</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
</dependencies>
dependencies {
compile('org.springframework:spring-core:2.5.6')
compile('org.springframework:spring-beans:2.5.6')
compile('org.springframework:spring-context:2.5.6')
compile('com.google.code.kaptcha:kaptcha:2.3:jdk15')
testCompile('junit:junit:4.7')
}
dependencies {
compile('org.springframework:spring-core:2.5.6')
compile('org.springframework:spring-beans:2.5.6')
compile('org.springframework:spring-context:2.5.6')
compile('com.google.code.kaptcha:kaptcha:2.3:jdk15')
testCompile('junit:junit:4.7')
}
kaptcha(Kaptcha怎么讀的)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于kaptcha的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
ChatGPT國(guó)內(nèi)免費(fèi)在線使用,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端
官網(wǎng):https://ai.de1919.com
本文目錄:
一、gradle和maven有什么用?分別有什么區(qū)別
Gradle和Maven都是項(xiàng)目自動(dòng)構(gòu)建工具,編譯源代碼只是整個(gè)過程的一個(gè)方面,更重要的是,你要把你的軟件發(fā)布到生產(chǎn)環(huán)境中來產(chǎn)生商業(yè)價(jià)值,所以,你要運(yùn)行測(cè)試,構(gòu)建分布、分析代碼質(zhì)量、甚至為不同目標(biāo)環(huán)境提供不同版本,然后部署。整個(gè)過程進(jìn)行自動(dòng)化操作是很有必要的。
整個(gè)過程可以分成以下幾個(gè)步驟:
然后我將其轉(zhuǎn)換成Gradle腳本,結(jié)果是驚人的:
注意配置從原來的28行縮減至7行!這還不算我省略的一些父POM配置。依賴的groupId、artifactId、 version,scope甚至是classfier,一點(diǎn)都不少。較之于Maven或者Ant的XML配置腳本,Gradle使用的Grovvy腳本殺傷力太大了,愛美之心,人皆有之,相比于七旬老婦松松垮垮的皺紋,大家肯定都喜歡少女緊致的臉蛋,XML就是那老婦的皺紋。
Gradle給我最大的有點(diǎn)是兩點(diǎn)。其一是簡(jiǎn)潔,基于Groovy的緊湊腳本實(shí)在讓人愛不釋手,在表述意圖方面也沒有什么不清晰的地方。其二是靈活,各種在Maven中難以下手的事情,在Gradle就是小菜一碟,比如修改現(xiàn)有的構(gòu)建生命周期,幾行配置就完成了,同樣的事情,在Maven中你必須編寫一個(gè)插件,那對(duì)于一個(gè)剛?cè)腴T的用戶來說,沒個(gè)一兩天幾乎是不可能完成的任務(wù)。
二、RuoYi若依系統(tǒng)的驗(yàn)證碼如何替換為更美觀的EasyCaptcha
圖片驗(yàn)證碼經(jīng)常驗(yàn)證如下一些場(chǎng)景。(1)用戶登錄,防止機(jī)器人登錄;(2)論壇留言,防止惡意灌水;(3)短信驗(yàn)證碼發(fā)送,防止盜刷短信。
Kaptcha 是一個(gè)由谷歌Googel出品的可高度配置的實(shí)用驗(yàn)證碼生成工具,是一個(gè)非常經(jīng)典的圖片驗(yàn)證碼解決方案。但,這個(gè)開源的工具生成的圖片比較素雅,美觀度一般,且項(xiàng)目已經(jīng)基本不維護(hù)了,從github上看,最近的一次更新是在3年前。
(1)在 ruoyi-frameworkpom.xml 添加依賴:
(2)在應(yīng)用子系統(tǒng)中修改驗(yàn)證碼生成的代碼,比如ruoyi-admin的CaptchaController中修改getCode方法的代碼:
(3)在前端項(xiàng)目中,RuoYi-Vue3srcviewslogin.vue的getCode方法中修改如下:
(4)再分別重啟前后端系統(tǒng),就可以看到效果了。
【本文結(jié)束】
三、python爬取驗(yàn)證碼圖片,遇到驗(yàn)證碼src屬性為完整的網(wǎng)址應(yīng)該怎么做?
爬蟲中手動(dòng)輸入驗(yàn)證碼方法無法獲取圖片src地址
驗(yàn)證碼在html中圖片標(biāo)簽內(nèi)容:
<class=“verCodeImg” src="/kaptcha.jpg?v=0.234724039578059" οnclick=“verCode(this)”>
< class=“verCodeImg” src="/kaptcha.jpg?v=0.234724239578059" οnclick=“verCode(this)”>
可知獲取到驗(yàn)證碼的src地址就能動(dòng)態(tài)的獲得驗(yàn)證碼
因?yàn)轵?yàn)證碼是動(dòng)態(tài)的!動(dòng)態(tài)的!動(dòng)態(tài)的!
用動(dòng)態(tài)爬取網(wǎng)頁(yè)的方法:
要用到selenium庫(kù)
其實(shí)獲得了驗(yàn)證碼的src地址,我還是沒能成功登陸
因?yàn)榧词故窍嗤逆溄狱c(diǎn)進(jìn)去,每一次刷新都會(huì)有不同的驗(yàn)證碼
通過動(dòng)態(tài)網(wǎng)頁(yè)打開是一張
解析src地址出來是另一張
四、JSP驗(yàn)證碼刷新報(bào)錯(cuò):java.net.SocketException: Connection reset by peer: socket write error
太奇怪,我測(cè)試了一下你的代碼,很好用阿,采用兩種方式都沒有問題
直接訪問img.jsp或者訪問html文件的img標(biāo)簽,都沒有問題。
補(bǔ)充:
我是在本地訪問的,如果你訪問其它計(jì)算機(jī),那么看看是否是防火墻的問題。代碼應(yīng)該沒有問題。
以上就是關(guān)于kaptcha相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
rollerskating怎么讀音發(fā)音(roller skating怎么讀音)
skate現(xiàn)在分詞(skate現(xiàn)在分詞為什么去e)
roⅡer一skating怎么讀(goⅰce-skating怎么讀)
疫情語(yǔ)境下的景觀設(shè)計(jì)(疫情語(yǔ)境下的景觀設(shè)計(jì)ppt)
chat網(wǎng)站(bing chat網(wǎng)站)