日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python 骚操作!如何让自己在斗图中立于不败之地?

發布時間:2024/9/15 python 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 骚操作!如何让自己在斗图中立于不败之地? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊??“小詹學Python”,選擇“星標公眾號”

福利干貨,第一時間送達!

本文授權轉載自AirPython,禁二次轉載


閱讀文本大概需要 6 分鐘。


1

目 標 場 景


平常和小伙伴們斗圖的過程中,你是否覺得微信的表情收藏夾不夠用,或者是查找太麻煩,不夠個性化?


那是否可以利用 Python,幫我們挑選到合適的表情,發送到指定的朋友和微信群呢?


本文的目標是根據關鍵字爬取斗圖啦」網站上的表情文件,然后登錄網頁微信端,挑選到合適的表情圖片下載到本地,最后發送給指定的對象。


2

準 備 工 作


爬取到表情后,需要人工進行一次篩選;另外模擬登錄微信、發送文件,我們需要通過 pip3 安裝好matplotlibitchat庫。


#?圖形顯示庫pip3?install?matplotlib#?安裝itchatpip3?install?itchat
pip3?install?matplotlib

#?安裝itchat
pip3?install?itchat


3

分 析 思 路


我們打開斗圖啦的官網,輸入關鍵字裝逼,點擊搜索,發現頁面分頁后匹配到了很多表情圖片。



首先,我們利用 xpath 獲取到當前頁面內所有表情父容器元素的列表。



#?獲取當前頁面的元素resp?=?requests.get(current_url,?headers=HEADERS)html_raw?=?etree.HTML(resp.text)#?獲取到所有的表情圖片所在的a標簽a_elements?=?html_raw.xpath('//div[@class="pic-content?text-center"]/div[@class="random_picture"]/a')
resp?=?requests.get(current_url,?headers=HEADERS)

html_raw?=?etree.HTML(resp.text)

#?獲取到所有的表情圖片所在的a標簽
a_elements?=?html_raw.xpath('//div[@class="pic-content?text-center"]/div[@class="random_picture"]/a')


接著,遍歷容器列表,獲取到所有表情的名稱、下載地址屬性信息。


for?a_element?in?a_elements:????????????#?獲取img標簽【最后一個img】【存儲地址】????????????img_element?=?a_element.xpath('./img[last()]')[0]????????????#?獲取p標簽【存儲名稱】????????????name?=?a_element.xpath('./p/text()')[0]????????????#?表情的下載地址????????????img_url?=?img_element.get('data-original')????????????#?注意:由于itchat沒法發送帶中文的文件,這里隨機生成一個名稱????????????name_new?=?make_random_string(6)????????????img_name?=?name_new?+?os.path.splitext(img_url)[-1]????????????imgs.append({????????????????'name':?img_name,????????????????'url':?img_url????????????})in?a_elements:
????????????#?獲取img標簽【最后一個img】【存儲地址】
????????????img_element?=?a_element.xpath('./img[last()]')[0]

????????????#?獲取p標簽【存儲名稱】
????????????name?=?a_element.xpath('./p/text()')[0]

????????????#?表情的下載地址
????????????img_url?=?img_element.get('data-original')

????????????#?注意:由于itchat沒法發送帶中文的文件,這里隨機生成一個名稱
????????????name_new?=?make_random_string(6)

????????????img_name?=?name_new?+?os.path.splitext(img_url)[-1]

????????????imgs.append({
????????????????'name':?img_name,
????????????????'url':?img_url
????????????})


然后,利用urlretrieve」將表情圖片下載到本地;使用matplotlib」將表情展示出來供我們瀏覽選擇。



#?表情保存的目錄local_img?=?'./imgs/%s'?%?target_emoji.get('name')#?下載到本地request.urlretrieve(target_emoji.get('url'),?local_img)#?把表情顯示出來供用戶選擇lena?=?mpimg.imread(filename)plt.imshow(lena)??plt.axis('off')??plt.show()
local_img?=?'./imgs/%s'?%?target_emoji.get('name')

#?下載到本地
request.urlretrieve(target_emoji.get('url'),?local_img)

#?把表情顯示出來供用戶選擇
lena?=?mpimg.imread(filename)

plt.imshow(lena)??
plt.axis('off')??
plt.show()


通過控制臺輸入內容,決定發送這個表情圖片,或者是查看下一個表情圖片;也可以通過輸入控制發送多個表情圖片。


ok?=?input('主人滿意嗎:')if?ok:???print('好的,就發送這張表情。') #?需要再發一張嗎???go_on_send?=?input('需要再發一張嗎?')???if?go_on_send:?????????continue???else:?????????print('結束了')?????????break#?需要再發一張嗎
???go_on_send?=?input('需要再發一張嗎?')
???if?go_on_send:
?????????continue
???else:
?????????print('結束了')
?????????break


最后,通過 itchat 查詢到指定的人,將選中的表情圖片發送給他。


def?send_to_person(username,?file_names):????"""????發送給某個人????:param?username:?發送對象的昵稱????:param?filename:?文件名????:return:????"""????room?=?itchat.search_friends(name=r'%s'?%?username)????userName?=?room[0]['UserName']????try:????????if?isinstance(file_names,?list):????????????#?多個圖片????????????for?file_name?in?file_names:????????????????itchat.send_image(file_name,?toUserName=userName)????????else:????????????#?一個圖片????????????itchat.send_image(file_names,?toUserName=userName)????????print('發送完畢!')????except:????????print('發送出錯!')
????"""
????發送給某個人
????:param?username:?發送對象的昵稱
????:param?filename:?文件名
????:return:
????"""

????room?=?itchat.search_friends(name=r'%s'?%?username)

????userName?=?room[0]['UserName']

????try:
????????if?isinstance(file_names,?list):
????????????#?多個圖片
????????????for?file_name?in?file_names:
????????????????itchat.send_image(file_name,?toUserName=userName)
????????else:
????????????#?一個圖片
????????????itchat.send_image(file_names,?toUserName=userName)
????????print('發送完畢!')
????except:
????????print('發送出錯!')


也可以通過群聊名稱獲取到群聊對象,把表情圖片發送到指定的微信群內。


def?send_to_group_chat(target_group_chat_name,?file_names):????"""????發送表情到指定的群聊????:param?target_group_chat_name:????:param?file_name:????:return:????"""????rooms?=?itchat.get_chatrooms(update=True)????#?目標群聊對象????target_room?=?None????for?room?in?rooms:????????group_chat_name?=?room.get('NickName')????????if?target_group_chat_name?==?group_chat_name:????????????target_room?=?room????????????break????if?target_room:????????if?isinstance(file_names,?list):????????????for?file_name?in?file_names:????????????????target_room.send_image(file_name)????????else:????????????target_room.send_image(file_names)????????print('發送完畢!')????else:????????print('抱歉,不存在這個群聊')
????"""
????發送表情到指定的群聊
????:param?target_group_chat_name:
????:param?file_name:
????:return:
????"""

????rooms?=?itchat.get_chatrooms(update=True)

????#?目標群聊對象
????target_room?=?None
????for?room?in?rooms:
????????group_chat_name?=?room.get('NickName')
????????if?target_group_chat_name?==?group_chat_name:
????????????target_room?=?room
????????????break

????if?target_room:
????????if?isinstance(file_names,?list):
????????????for?file_name?in?file_names:
????????????????target_room.send_image(file_name)
????????else:
????????????target_room.send_image(file_names)

????????print('發送完畢!')
????else:
????????print('抱歉,不存在這個群聊')


4

結 果 結 論


運行程序后,通過微信客戶端掃描二維碼登錄微信,然后輸入要發送的對象、表情類型,程序會自動爬取到匹配后的表情,最后通過用戶篩選后,發送到指定的人。


我已經將全部源碼上傳到后臺上,公眾號回復「?斗圖?即可獲得。


推薦閱讀(點擊標題即可跳轉)

Python 騷操作:如何給你愛的讀者每天發早報?

Python 3.8 即將到來,這是你需要關注的幾大新特性


總結

以上是生活随笔為你收集整理的Python 骚操作!如何让自己在斗图中立于不败之地?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: www.国产精品 | 99国产精品久久久久久久成人热 | 亚洲天天视频 | 竹菊影视一区二区三区 | 一区二区三区免费在线 | 九九热在线免费观看 | www.奇米.com | 日韩在线中文字幕 | 男生操女生屁股 | 国产精品腿扒开做爽爽爽挤奶网站 | 国产婷婷在线视频 | 亚洲精品中文字幕乱码无线 | 国产一国产二国产三 | 97人人爽人人爽人人爽 | 欧美三日本三级少妇99 | 台湾a级片 | 成人aaaaa| 亚洲无码精品在线观看 | 精品少妇人妻av一区二区 | 国产又粗又猛又爽又黄的 | 久久久久亚洲AV成人无在 | 国产欧美精品一区二区 | 少妇资源 | 72成人网 | 日本黄色免费 | 国产一级一片免费播放 | 国产精品九九九九九 | 日日骚网 | 欧美大片一区二区三区 | 亚洲不卡网 | 中文字幕一区二区三 | 狠狠搞av | 欧美xxxxxxxxx | 天天射日日射 | 影音先锋丝袜美腿 | 一级色网站| 欧美老熟妇乱xxxxx | 国产精品成人网 | 一级黄色录像大片 | 国产成人传媒 | 日韩视频免费观看高清完整版在线观看 | 操的网站| 国产精品无码无卡无需播放器 | 亚洲国产午夜 | 欧美成人极品 | 性欧美丰满熟妇xxxx性仙踪林 | 色综合加勒比 | 欧美精品在线观看视频 | 一区二区三区免费观看 | jizz免费在线观看 | 成人综合激情 | 欧美50p| 欧美裸体精品 | 日本人の夫妇交换 | 中国毛片在线观看 | 国产精品一区二区人妻喷水 | 快色视频在线观看 | 欧美人性生活视频 | 国产成人99 | 日韩成人免费在线视频 | 综合网av| 日韩精品在线一区二区 | 五月天看片 | 国产精品探花视频 | 婷婷国产一区 | 国产一国产二国产三 | 理论黄色片 | 精品久久一区二区三区 | 乳孔很大能进去的av番号 | 日韩久久成人 | 亚洲成人中文字幕在线 | 一区二区三区网 | av色资源| 国产精品熟女一区二区不卡 | 国产又大又黄又爽 | 色婷婷免费| 看国产毛片 | 羞羞的视频在线观看 | 久夜精品| 青青草视频免费播放 | 成人福利网站在线观看 | 亚洲女人天堂成人av在线 | 国产精品麻豆成人av电影艾秋 | 人人爽人人澡 | 亚洲色图在线观看视频 | 日韩免费一区二区 | 91成人小视频 | 宅男的天堂 | 亚洲精品一区在线观看 | 啪啪网站视频 | 欧美日韩不卡一区 | 一级黄色a级片 | 有码视频在线观看 | 日韩国产综合 | 黄视频网站在线看 | 久久久久久久蜜桃 | 国产91绿帽单男绿奴 | 国产在线视视频有精品 | 国产精品伦理 |