使用ChatGPT自動(dòng)編寫Python爬蟲腳本
最近人工智能聊天機(jī)器人ChatGPT真的是太火了,無(wú)論你在哪個(gè)媒體上都會(huì)看到關(guān)于它的新聞。ChatGPT是一種基于大語(yǔ)言模型的生成式AI,可以自動(dòng)生成類似人類語(yǔ)言的文本,把梳理好的有邏輯的答案呈現(xiàn)在你面前。除了能聊天、寫論文、創(chuàng)作詩(shī)歌,ChatGPT還可以幫助我們編寫Python代碼。
今天,我們就講一講如何用ChatGPT寫Python爬蟲腳本?
??????
別光看不練,我們親自嘗試一波,如下圖所示,我們?cè)儐?wèn)ChatGPT“我想用Python爬取豆瓣電影TOP250的數(shù)據(jù),代碼要怎么寫?”ChatGPT很快給出了答案
我們將上述的代碼復(fù)制到本地編輯器中運(yùn)行,會(huì)發(fā)現(xiàn)并沒(méi)有打印結(jié)果。print(response)看一下,發(fā)現(xiàn)返回<Response [418]>,這時(shí)候應(yīng)該怎么辦?自然是繼續(xù)詢問(wèn)ChatGPT呀!
“運(yùn)行剛才的Python代碼,response返回<Response [418]>,我應(yīng)該如何修改?”
這次,ChatGPT給了我們解決方案:添加請(qǐng)求頭部信息。
再次在編輯器中運(yùn)行Python代碼,會(huì)發(fā)現(xiàn)已經(jīng)得到了輸出結(jié)果。
圖片
如上所示,我們使用ChatGPT完成了一次簡(jiǎn)單的爬蟲,這個(gè)例子相信也是很多爬蟲小白學(xué)習(xí)時(shí)的第一個(gè)案例。但即便是這個(gè)最簡(jiǎn)單的例子,在編寫中也遇到了報(bào)錯(cuò)/得不到結(jié)果,所以真正實(shí)際起來(lái)還是需要自己具備一定的Python爬蟲基礎(chǔ)知識(shí),以及高效利用ChatGPT的能力。
所以在平時(shí)的使用中,我更多是將其(ChatGPT)作為寫爬蟲的助力。比如,在有一點(diǎn)難度的Python爬蟲中,往往避不開(kāi)JavaScript逆向,如果想徹底掌握,就不得不去學(xué)那幾百頁(yè)厚厚的爬蟲書,還不一定能精通。
而現(xiàn)在,在ChatGPT輔助下,我們可以高效的解決js逆向問(wèn)題。
再舉一個(gè)例子,使用Python寫爬蟲也會(huì)經(jīng)常需要寫正則表達(dá)式,來(lái)從文本中提取待爬取的關(guān)鍵數(shù)據(jù)/文本信息。
利用ChatGPT也可以輔助我們快速寫好一個(gè)正則表達(dá)式。
如下圖所示,我向ChatGPT提問(wèn):
幫我寫一個(gè)正則表達(dá)式,可以從 肖申克的救贖9.7https://movie.douban.com/subject/1292052/ 中提取9.7
很快得到了答案:
ChatGPT就像一位全能的員工,對(duì)于我們提出的各種編程問(wèn)題,它都能給出解決方案并落實(shí)到代碼。
當(dāng)然了,作為老板的我們也需要對(duì)整體概念有全面的認(rèn)識(shí)和判斷。