很多兄弟在聊天上沒有下太多的功夫,導致自己聊天的時候很容易尬住,然後就不知道聊啥了,這時候合適表情包分分鐘就能救場,但是一看自己收藏的表情包,好家伙,兩隻手都數得過來。 所以今天來給兄弟們分享一下爬取表情包的代碼,再也不用尬聊了! 給大家看看我朋友的尬聊場面 本次目標 網站:發表情 網不好 ,沒載入 ...
很多兄弟在聊天上沒有下太多的功夫,導致自己聊天的時候很容易尬住,然後就不知道聊啥了,這時候合適表情包分分鐘就能救場,但是一看自己收藏的表情包,好家伙,兩隻手都數得過來。
所以今天來給兄弟們分享一下爬取表情包的代碼,再也不用尬聊了!
給大家看看我朋友的尬聊場面
本次目標
網站:發表情
網不好 ,沒載入出來,表弟又在當老六,看不該看的搶我網速!!!
使用的工具
環境:Python3.8、pycharm
需要安裝的第三方模塊:lxml 、requests
頁面分析
- 靜態還是動態 get
- 翻頁規律
- 在img標簽下 獲取屬性
src屬性 data 下載鏈接
獲取title屬性值 圖片的名字xpath
代碼實戰
# 導入模塊 import requests # 請求模塊 from lxml import etree # 解析模塊 import urllib.request # 內置模塊 import re # 正則 # 文章不理解,我也錄製了相應的視頻講解 # 直接在這個君羊:708525271領取就好了,包括完整代碼 num = 0 for i in range(1,11): url = f'https://**網址屏蔽了,不然過不了/biaoqing/lists/page/{i}.html' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36' } # 模擬用戶 爬取數據 response = requests.get(url,headers=headers) data = response.text # print(data) # 輸出 # 創建對象 html-->xml html = etree.HTML(data) # 找到所有img標簽 //在任意節點去匹配 不需要考慮位置 //img[@class="ui image lazy"] img_tag = html.xpath('//img[@class="ui image lazy"]') # print(len(img_tag)) # 一個頁面有45個表情包 for img in img_tag: # print() # 下載鏈接 src = img.xpath('@data-original')[0] # print(src) # 名字 當前的img下麵找當前節點 title屬性'@title' name = img.xpath('@title')[0] # print(name) title = re.sub('[\ / : * ? " < > |]',"", name) # 替換 urllib.request.urlretrieve(src,f'img/{title}{num}.jpg') # 保存 print(f'{num}張爬取完畢') num+=1 # 等價於num=num+1
採集結果
最後
表情包在手,你就是鬥圖之王,沒什麼事情是一個表情包不能解決的,如果有,那就多發一些!
趕緊去試試吧,記得給小編一個三連吧!麽麽噠!