通过python爬虫爬取图片,并通过企业微信机器人发送图片至企业微信群
生活随笔
收集整理的這篇文章主要介紹了
通过python爬虫爬取图片,并通过企业微信机器人发送图片至企业微信群
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近學習了一點爬蟲,就想著能不能通過企業微信的機器人發送一些圖片到微信群中。企業微信機器人說到底就是一個webhook地址,你也可以看成一個URL,而利用企業微信機器人發送圖片實則就是向服務器發送post請求,再將響應數據發送到webhook地址,以下是我爬取 彼岸圖網(http://pic.netbian.com)的python爬蟲代碼,使用的是強大的requests庫(scrapy框架還不太會用,就不用了)
import requests from bs4 import BeautifulSoup import os,re,time,hashlib,base64head = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36' } start_urls = [] #定義一個url列表 for i in range(1,1000):if(i==1): url = 'http://pic.netbian.com/index.html' #判斷是否為首頁,并加入url列表中start_urls.append(url)else:url = 'http://pic.netbian.com/index_'+str(i)+'.html' #判斷是否為非首頁,并加入url列表中start_urls.append(url) i = 1 #為了將圖片每二十張放入到不同的文件夾 url1='https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx' #自己的webhoook地址 for url in start_urls: #將url列表url依次取出response = requests.get(url) #向服務器發出get請求,獲得響應response.encoding='gbk' #設置響應的編碼格式為GBKhtml = response.text #獲得相應的文本信息soup = BeautifulSoup(html,'lxml') #通過beautifulsoup庫中的lxml HTML 解析器提取數據result = soup.find('ul',class_="clearfix").find_all('img') #找到<img>標簽root = 'D:/page/SpiderImgs/imgs-'+str((i//20)+1)+'/' #拼接保存的路徑 根據自己要保存的路徑替換for img in result:path = root + img['src'].split('/')[-1] #獲取圖片資源名稱(http://pic.netbian.com/uploads/allimg/190824/212516-1566653116f355.jpg中的212516-1566653116f355.jpg)并拼接保存路徑url = 'http://pic.netbian.com'+img['src'] #拼接圖片的urlr = requests.get(url, headers=head) #發送get請求圖片資源if not os.path.exists(root): #判斷文件夾是否存在os.makedirs(root) #創建新的文件夾else:with open (path,'wb+') as f: #創建一個文件以二進制寫f.write(r.content) #將請求服務器圖片資源的響應結果寫進文件中f.close()print("圖片 "+str(i)+".jpg 保存成功")try:with open(path,'rb') as f: #以讀二進制的方式打開文件base64_data = base64.b64encode(f.read()).decode() #獲取base64編碼file = open(path,'rb') md = hashlib.md5()md.update(file.read())res1 = md.hexdigest() #獲取圖片內容的md5值data = {"msgtype" : 'image',"image":{"base64":base64_data,"md5":res1}} #JSON數據格式t = requests.post(url1, headers=head, json=data) #發送post請求except:print("異常")print('\n')i = i + 1 #文件夾名稱加一time.sleep(3) #讓程序睡3秒以上代碼有任何問題或不懂可在評論區留言,
總結
以上是生活随笔為你收集整理的通过python爬虫爬取图片,并通过企业微信机器人发送图片至企业微信群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机office比赛,Office智慧
- 下一篇: python 批量修改文件名_Pytho