中文字幕欧美日韩|日韩性色一区二区三区|精品久久久久久久久久岛国|一区二区国产盗摄精品

    <td id="h1kkc"><tr id="h1kkc"></tr></td><noscript id="h1kkc"><tbody id="h1kkc"></tbody></noscript>
    <rp id="h1kkc"></rp>
    首頁(yè) > 傳媒 > 關(guān)鍵詞  > 正文

    AI 幫寫爬蟲,真的嗎? CodeWhisperer:當(dāng)然!

    2023-10-18 10:56 · 稿源: 站長(zhǎng)之家用戶

    2023 年技術(shù)圈什么最火?答案毫無(wú)疑問(wèn)是 AIGC,伴隨該項(xiàng)技術(shù)的發(fā)展,新的編程方式也出現(xiàn)了,那就是用 AI 輔助編程,有了 AI 的加持,開(kāi)發(fā)人員的效率和生產(chǎn)力可以得到大幅度的提升。今天我們就介紹一款非常棒的人工智能編程工具 Amazon CodeWhisperer , 相信我,用上他之后,你的工作效率至少能翻一倍。

    在日常的編碼工作中,你是否會(huì)碰到如下難題?

    1.? 接觸了一款全新的 Python 模塊,不知道如何開(kāi)啟 hello world;

    2.? 模塊的某個(gè)方法,忘記了參數(shù)和返回值,反復(fù)切換手冊(cè)會(huì)打斷思路;

    3.? 不想寫注釋;

    4.? 寫了一段代碼,但是并不健壯,擔(dān)心有難以發(fā)現(xiàn)的漏洞;

    5.? ……

    如果你正在被這些問(wèn)題困擾,那 Amazon CodeWhisperer 能非常好的解決上述問(wèn)題。

    下面跟隨我的腳步,開(kāi)啟 CodeWhisperer 的實(shí)踐吧!

    CodeWhisperer 初始化

    CodeWhisperer 支持的 IDE 包括 Visual Studio(VS)Code(本篇博客使用的 IDE) 和 JetBrains IDE(IntelliJ、PyCharm、CLion、GoLand、WebStorm、Rider、PhpStorm、RubyMine 和 DataGrip),安裝過(guò)程只需要幾分鐘,這里我們不詳細(xì)展開(kāi)講解,大家可以參考 官方文檔 ,官方還貼心的準(zhǔn)備的視頻教程~

    本篇博客我們使用 VSCode 完成一個(gè)爬蟲項(xiàng)目實(shí)踐,可以直接在 VSCode 插件中檢索【CodeWhisperer】,直接安裝即可(已經(jīng)有將近 200W 的安裝量啦,要抓緊跟上大家的節(jié)奏),安裝完畢,在 VSCode 側(cè)邊欄中會(huì)出現(xiàn) CodeWhisperer 插件圖標(biāo),如下所示。

    初始化過(guò)程中最重要的就是賬號(hào)的鏈接,點(diǎn)擊上圖【Connect to ……】鏈接,之后按照步驟登錄賬號(hào),一系列的操作之后,瀏覽器出現(xiàn)下圖綠色狀態(tài)提示界面,此時(shí)賬號(hào)對(duì)接已經(jīng)完成。

    返回到 VSCode 中,會(huì)發(fā)現(xiàn) Amazon CodeWhisperper 幫助手冊(cè)已經(jīng)打開(kāi),建議閱讀一下 ,里面已經(jīng)整理了插件的基礎(chǔ)使用說(shuō)明。

    與此同時(shí),VSCode 左下角開(kāi)發(fā)者工具(DEVELOPER TOOLS)也已經(jīng)顯示鏈接到 Builder ID。至此,我們的前置工作已經(jīng)全部完成,下面可以開(kāi)始進(jìn)行工具使用。

    CodeWhisperper 使用

    簡(jiǎn)單邏輯示例

    CodeWhisperer 插件安裝完畢,默認(rèn)會(huì)開(kāi)啟 Auto-Suggesions(自動(dòng)建議模式),此時(shí)當(dāng)我們?cè)诰帉懽⑨尰虼a之后,CodeWhisperer 會(huì)自動(dòng)給我們提供代碼提示,這個(gè)過(guò)程就像超強(qiáng)版的語(yǔ)法提示,如果你還沒(méi)有安裝好插件,可以先看一下動(dòng)圖,整體感受一下。

    CodeWhisperer 的代碼提示,在 VSCode 中可以使用左右方向鍵進(jìn)行選擇,使用?Tab 進(jìn)行確認(rèn),其他按鍵表示不采納提示代碼。初次體驗(yàn)下來(lái),正如插件名稱(Whisperer:低語(yǔ)者)所描述的一樣,就像是編輯器在輕輕的和我們說(shuō)著即將要敲入的代碼,如果同意,可以一鍵采納,不同意,直接忽略即可。

    代碼翻譯示例

    擁有此功能之后,很多簡(jiǎn)單的程序完全可以基于智能提示編寫完畢,但這肯定不夠,我們需要 CodeWhisperer 完成更有挑戰(zhàn)的事情,在 Python 爬蟲領(lǐng)域,經(jīng)常需要將一段前端 JS 代碼用 Python 重新實(shí)現(xiàn)。

    在 VSCode 中直接輸入你的需求,然后 CodeWhisperper 會(huì)給我們一個(gè)完整的實(shí)現(xiàn)示例,可以看到代碼重寫完全正確。

    加密函數(shù)示例

    除了翻譯代碼外,在編寫爬蟲案例的時(shí)候,如果你對(duì)某些加密函數(shù)使用詳情有遺忘,可以讓 CodeWhisperer ?直接給出示例,快速喚醒自己的記憶。

    下圖為輸入注釋 # 使用 Python 實(shí)現(xiàn) hmac_sha256 加密函數(shù) 獲取函數(shù)的使用示例代碼。

    如果在使用 CodeWhisperer 的過(guò)程中按錯(cuò)按鍵,即沒(méi)有使用 Tab 確認(rèn)代碼,可以隨時(shí)按下快捷鍵 Alt+C,CodeWhisperer 代碼提示會(huì)再次出現(xiàn),又可以繼續(xù)加速你的開(kāi)發(fā)效率了。

    混合加密示例

    如果將上述邏輯都定義為單邏輯,那下述需求就是一個(gè)復(fù)合邏輯示例了,在實(shí)際編碼中,會(huì)碰到需要將兩種加密混合使用的情況,需求如下:

    # 使用 Python 實(shí)現(xiàn) Base64 + AES 加密字符串

    在 IDE 中輸入上述注釋信息,然后回車,CodeWhisperer 就會(huì)自動(dòng)生成后續(xù)代碼,其中部分邏輯可以一次性完成,效果如下,其中在核心邏輯部分,CodeWhisperer 表現(xiàn)非常優(yōu)秀,答案秒輸出,并且直接可用。

    算法模板示例

    在業(yè)務(wù)邏輯的編寫過(guò)程中,有時(shí)會(huì)用到常見(jiàn)算法,例如快排、堆排、哈希等,這些算法很多都類似模板代碼,在編寫的時(shí)候,如果可以一鍵生成,能大幅度提高代碼編寫速度,包括算法改寫速度,在 CodeWhisperer 中,可以通過(guò)注釋快速生成。

    使用 Python 生成快排代碼

    體驗(yàn)5 個(gè)示例之后,CodeWhisperer 的使用非常簡(jiǎn)單,而且無(wú)需切換編輯窗口,在 IDE 的代碼文件中直接完成了 AIGC 的問(wèn)答流程,響應(yīng)速度非??欤a準(zhǔn)確性很高。

    單獨(dú)的案例對(duì) CodeWhisperer 已經(jīng)沒(méi)有難度了,接下來(lái)我們嘗試完成一個(gè)完整的 Python 爬蟲案例(咱們看一下只寫注釋,能不能完成一個(gè)合格的爬蟲采集程序)。

    CodeWhisperer 項(xiàng)目實(shí)戰(zhàn)

    目標(biāo)采集站點(diǎn)為作者博客,無(wú)侵權(quán)問(wèn)題。

    編寫爬蟲基礎(chǔ)框架注釋,包含如下內(nèi)容:

    1.?程序使用的采集模塊

    2.?目標(biāo)采集站點(diǎn)地址

    3.?采集的目標(biāo)標(biāo)簽

    4.?數(shù)據(jù)存儲(chǔ)到文件

    5.?發(fā)送采集到的數(shù)據(jù)到指定郵箱

    第 一步:輸入如下注釋,獲取網(wǎng)頁(yè)響應(yīng)內(nèi)容

    #

    寫完注釋,直接回車之后,CodeWhisperer 直接給我們生成了對(duì)應(yīng)的代碼,過(guò)程中只需要按下 回車和 Tab 鍵即可。

    如果你覺(jué)得上述代碼有些簡(jiǎn)單,可以在代碼基礎(chǔ)上繼續(xù)完善,例如將請(qǐng)求頭進(jìn)行完善,增加 referer 和 host 參數(shù),直接在需要修改的位置添加注釋即可。

    第二步:編寫目標(biāo)數(shù)據(jù)采集函數(shù)

    這一步,我們要使用 lxml 模塊中的 etree 提取目標(biāo)標(biāo)簽,繼續(xù)將我們的邏輯輸入到注釋注釋中,然后回車。

    # 使用 etree 模塊提取網(wǎng)頁(yè)響應(yīng)中所有的 article 標(biāo)簽

    # 使用 etree 模塊提取網(wǎng)頁(yè)響應(yīng)中所有的 article 標(biāo)簽

    print(article_tags)

    此時(shí)目標(biāo)博客標(biāo)簽已經(jīng)被初步提取,下面要將標(biāo)題和超鏈接地址進(jìn)行再次提取,這里的注釋需要盡可能編寫清晰,如果你對(duì) Python 爬蟲技術(shù)棧有一定了解,到這里就會(huì)發(fā)現(xiàn) CodeWhisperer 對(duì)代碼編寫提速 效果。

    第三步:數(shù)據(jù)存入到 csv 文件中

    寫入文件的邏輯屬于常見(jiàn)操作,直接輸入函數(shù)需求,相信 CodeWhisperer 會(huì)直接生成的,輸入的參考注釋如下:

    write_to_csv() 函數(shù)調(diào)用放到上述循環(huán)中即可完成本步驟。再次運(yùn)行代碼,在爬蟲目錄會(huì)生成對(duì)應(yīng)的文件,打開(kāi)文件得到目標(biāo)數(shù)據(jù),效果圖如下所示。

    到這里一個(gè)簡(jiǎn)單的爬蟲寫完了,但是我們的工作還沒(méi)有完成,要繼續(xù)優(yōu)化這個(gè)程序。

    第四步:將采集到的數(shù)據(jù),發(fā)送到 163 郵箱

    輸入注釋:# 編寫一個(gè)郵件發(fā)送函數(shù),將剛剛生成的文件 codewhisperper_demo.csv 發(fā)送到指定郵箱,CodeWhisperer 瞬間就會(huì)幫助我們生成一個(gè)參考函數(shù),實(shí)際效果如下圖所示。

    將上述代碼中的賬號(hào)和密碼修改為自己真實(shí)數(shù)據(jù),即可實(shí)現(xiàn)一鍵發(fā)送郵件。

    打開(kāi)收件箱,可以看到剛剛的郵件已經(jīng)發(fā)送成功,CodeWhisperer 給我們提供了一種郵件發(fā)送的實(shí)現(xiàn),你可以再其基礎(chǔ)上進(jìn)行改造,以滿足個(gè)性化的需求。

    CodeWhisperer 使用總結(jié)

    在博客開(kāi)篇,我提出了編碼過(guò)程中幾個(gè)比較頭疼的問(wèn)題,尤其是第二個(gè),程序員在編碼過(guò)程中總是切出去查找代碼示例和文檔手冊(cè),從而打斷編碼思路,而 CodeWhisperer 非常美好的解決了該問(wèn)題,在編碼的過(guò)程中,Amazon CodeWhisperer 自動(dòng)提供編碼建議,同意就使用,不同意就舍棄,真正實(shí)現(xiàn)了沉浸式編程。

    除此之外,CodeWhisperer 還可以基于代碼和注釋生成新的業(yè)務(wù)代碼,尤其當(dāng)我們 Python 工程師接觸一個(gè)新的模塊時(shí),他可以快速的產(chǎn)出示例代碼,而且生成的代碼與我們編碼風(fēng)格非常相似,甚至編碼風(fēng)格和命名規(guī)則都可以美好學(xué)習(xí)到。在編碼代碼過(guò)程中,CodeWhisperer 還會(huì)自動(dòng)為我們的代碼提供注釋參考,讓我們將更多精力投入到業(yè)務(wù)邏輯中。

    將 CodeWhisperer ?用起來(lái)吧,幾分鐘之后,你就會(huì)深刻的感受到編碼效率的提升!

    推廣

    特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))均為站長(zhǎng)傳媒平臺(tái)用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù),對(duì)本頁(yè)面內(nèi)容所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任,相關(guān)信息僅供參考。站長(zhǎng)之家將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。任何單位或個(gè)人認(rèn)為本頁(yè)面內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),可及時(shí)向站長(zhǎng)之家提出書面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明(點(diǎn)擊查看反饋聯(lián)系地址)。本網(wǎng)站在收到上述法律文件后,將會(huì)依法依規(guī)核實(shí)信息,溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。

    • 相關(guān)推薦
    • AI爬蟲如狼似虎,維基百科已經(jīng)選擇認(rèn)慫

      美國(guó)新聞媒體聯(lián)盟發(fā)起"負(fù)責(zé)任AI"運(yùn)動(dòng),要求科技巨頭為AI訓(xùn)練內(nèi)容付費(fèi)。與此同時(shí),維基百科基金會(huì)宣布與谷歌旗下Kaggle合作,發(fā)布專門優(yōu)化的AI訓(xùn)練數(shù)據(jù)集,包含研究摘要、圖像鏈接等結(jié)構(gòu)化數(shù)據(jù)。此舉旨在應(yīng)對(duì)AI廠商爬蟲帶來(lái)的帶寬壓力——維基百科發(fā)現(xiàn)AI爬蟲雖僅占訪問(wèn)量的35%,卻消耗了65%的核心數(shù)據(jù)中心流量。通過(guò)提供機(jī)器友好的JSON格式數(shù)據(jù),維基百科希望引導(dǎo)AI廠商使用規(guī)范渠道獲取內(nèi)容,而非無(wú)節(jié)制抓取原始網(wǎng)頁(yè)。這反映了內(nèi)容平臺(tái)在AI時(shí)代面臨的兩難:既要維護(hù)用戶體驗(yàn),又難以完全阻擋技術(shù)迭代帶來(lái)的數(shù)據(jù)需求。

    • 程序員危!微軟CEO納德拉:公司高達(dá)30%代碼是AI

      微軟CEO納德拉在Meta的LlamaCon大會(huì)上透露,微軟代碼庫(kù)中20%-30%的代碼由AI生成,其中Python應(yīng)用進(jìn)展最快,C語(yǔ)言相對(duì)較慢。微軟CTO凱文·斯科特預(yù)測(cè)到2030年,95%代碼將由AI生成。谷歌CEO皮查伊也表示,谷歌超30%代碼由AI生成。Meta CEO扎克伯格則未透露具體數(shù)據(jù)。由于缺乏統(tǒng)一的AI代碼衡量標(biāo)準(zhǔn),這些數(shù)據(jù)僅供參考。(140字)

    • 媲美OpenAI-o3,剛剛開(kāi)源模型DeepCoder,訓(xùn)練方法、數(shù)據(jù)集大公開(kāi)

      今天凌晨4點(diǎn),著名大模型訓(xùn)練平臺(tái)TogetherAI和智能體平臺(tái)Agentica,聯(lián)合開(kāi)源了新模型DeepCoder-14B-Preview。該模型只有140億參數(shù),但在知名代碼測(cè)試平臺(tái)LiveCodeBench的測(cè)試分為60.6%,高于OpenAI的o1模型,略低于o3-mini。TogetherAI剛獲得3.05億美元的B輪融資,其估值也從去年的12.5億美元翻倍至33億美元。

    • 300元一學(xué)期,誰(shuí)在教縣城老人AIprompt”

      我回了一趟湖北老家。只見(jiàn)媽媽急匆匆地出了門,丟下一句:“老年大學(xué)的AI課要趕不及了!”啥?老年大學(xué)已經(jīng)這么緊跟時(shí)代了?連我們這個(gè)三線城市都開(kāi)上了AI課?我的媽媽是一名非常善于使用智能手機(jī)的退休人士,很多APP甚至用得比我都順溜。在AI時(shí)代,老年人也會(huì)面臨跟年輕人一樣,甚至更復(fù)雜的技術(shù)衍生問(wèn)題。

    • “太依賴AI,孩子腦子真的會(huì)廢掉”|一線

      “我當(dāng)時(shí)特別生氣,直接把他的手機(jī)沒(méi)收了?!闭劦饺昙?jí)兒子照抄AI答案一事,邵女士這樣說(shuō)道。這會(huì)讓很多家庭不知所措同時(shí)又為另外一些家庭打開(kāi)了一扇天窗。

    • IQ 過(guò)百的 AI 模型名單發(fā)布:ChatGPT、Deepseek等上榜

      人工智能IQ哪家強(qiáng)?o3 智商高達(dá) 132、Gemini 2.5 Pro Exp. 拿下 128 分、Claude 憑借 3.7 Sonnet Extended 位列第四、Deepsee R 1……

    • AI進(jìn)化論——音樂(lè)、繪畫和舞蹈的DeepSeek時(shí)刻

      “昔者倉(cāng)頡作書天雨粟,鬼夜哭”——人類掌握文字后,天地為之動(dòng)容,因?yàn)閷儆谌祟惖奈拿髡Q生了?!皞}(cāng)頡作書”出自西漢《淮南子》,距離人類掌握文字已經(jīng)過(guò)去了千年。AI進(jìn)化的答案,或許早就鐫刻在人類文明的起點(diǎn)里。

    • 深度deepin 23.1正式發(fā)布!AI默認(rèn)引擎切換至DeepSeek、修復(fù)超百項(xiàng)問(wèn)題

      快科技4月16日消息,今天,深度操作系統(tǒng)宣布,deepin 23.1版本已正式發(fā)布。此版本聚焦于解決基礎(chǔ)組件更新后的安裝效率問(wèn)題,大幅提升新用戶安裝體驗(yàn),同時(shí)集成多項(xiàng)功能優(yōu)化與問(wèn)題修復(fù),進(jìn)一步優(yōu)化系統(tǒng)使用。本次版本的重點(diǎn)改進(jìn)包括內(nèi)核優(yōu)化、AI 默認(rèn)引擎切換至DeepSeek、修復(fù)超百項(xiàng)用戶反饋問(wèn)題等,具體重點(diǎn)改進(jìn)如下:硬件兼容性與內(nèi)核優(yōu)化:集成6.6/6.12內(nèi)核更新、NVIDIA顯卡驅(qū)動(dòng)升級(jí)、Intel/AMD CPU微碼更新,全面提升硬件支持與底層性能;核心功能增強(qiáng):DDE新增智能鏡像源管理、緊湊模式入口,全局搜索支持離線自然語(yǔ)言與AI處理能力;?

    • AI日?qǐng)?bào):國(guó)內(nèi)首個(gè)多模態(tài)AI程序員上崗;字節(jié)啟動(dòng)Top Seed計(jì)劃招募AI人才;DeepSeek R1T Chimera上線OpenRouter

      【AI日?qǐng)?bào)】今日AI領(lǐng)域重要?jiǎng)討B(tài):1.百度發(fā)布文心快碼3.5及多模態(tài)AI程序員"文心快碼Comate Zulu",提升開(kāi)發(fā)效率;2.字節(jié)跳動(dòng)啟動(dòng)"Top Seed"計(jì)劃,招募30名AI博士人才;3.DeepSeek開(kāi)源R1T Chimera模型上線OpenRouter平臺(tái);4.阿里AI工程師余亮獲"全國(guó)勞動(dòng)模范"稱號(hào);5.開(kāi)源圖像編輯工具Step1X-Edit登陸Hugging Face,性能媲美GPT-4o;6.谷歌被曝每月向三星支付巨額資金預(yù)裝Gemini應(yīng)用

    • 為了反爬蟲 GitHub部署新規(guī)則:使用中文可能被限制訪問(wèn)

      據(jù)報(bào)道,GitHub部署了新的風(fēng)控規(guī)則,會(huì)檢查用戶瀏覽器請(qǐng)求頭的語(yǔ)言部分,如果檢測(cè)到用戶使用的是中文(僅限zh_CN),則可能會(huì)觸發(fā)訪問(wèn)限制。不過(guò)GitHub并非全面封禁中文用戶,而是將多個(gè)條件整合觸發(fā)限制,首先會(huì)檢查常規(guī)規(guī)則(如黑名單IP和UA),再檢測(cè)IP地址質(zhì)量。只有當(dāng)這兩個(gè)條件全部通過(guò)后,才會(huì)檢查語(yǔ)言部分是否包含zh_CN,如果用戶IP質(zhì)量沒(méi)問(wèn)題,通常不會(huì)觸發(fā)語(yǔ)?