MD5
md5的全称是
md5信息摘要算法(英文:MD5 Message-Digest Algorithm ),一种被广泛使用的密码散列函数,可以产生一个128位(16字节,1字节8位)的散列值(常见的是用32位的16进制表示,比如:0caa3b23b8da53f9e4e041d95dc8fa2c),用于确保信息传输的完整一致。
抓取图片链接
这里通过Selenium+headless Chrome的方式抓取的所有<img>里的src属性,来获得图片链接
1 chrome_options = webdriver.ChromeOptions() 2 3 chrome_options.add_argument('--headless') 4 chrome_options.add_argument('--disable-gpu') 5 6 driver = webdriver.Chrome(options=chrome_options, executable_path="C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe") 7 driver.get(url) 8 imgs = driver.find_elements_by_xpath("//img") 9 img_src = [] 10 for img in imgs: 11 src = img.get_attribute("src") 12 img_src.append(src)
MD5值计算
首先用urllib将图片下载到本地,然后用hashlib里的md5得到md5值
request.urlretrieve(url, "static/temp.jpg") file = open("static/temp.jpg", "rb") md = hashlib.md5() md.update(file.read()) res1 = md1.hexdigest() print(res1)
res1就是图片的md5值