保存图片代码:
def getImg(self,img_url_i):
img_text = login_session.get(img_url_i,headers=self.headers,verify=False).text
img_soup = BeautifulSoup(img_text,'lxml')
img_jpg = img_soup.find_all("img",class_="origin_image zh-lightbox-thumb lazy")
for jpg_i in img_jpg:
jpg_file = jpg_i.get('data-actualsrc')
print (jpg_file)
print (type(jpg_file))
jpg_i = jpg_file.split('/')[-1]
if not os.path.exists(self.img_dir):
os.mkdir(self.img_dir)
jpg_j = self.img_dir+'/'+jpg_i
print (jpg_j)
urllib.urlretrieve(jpg_file,jpg_j)
这样处理,但是无法保存到图片
其中:
print (jpg_file)内容:
https://pic4.zhimg.com/d49fbe04cf4cd326ecb754b67002738b_b.jpg
print type(jpg_file)内容:
<class 'str'>
print (jpg_j)内容:
imgdir/d49fbe04cf4cd326ecb754b67002738b_b.jpg
是不是因为type(jpg_file)的类型问题导致无法保存到图片的?
单个测试图片保存是正常的
In [1]: import urllib
In [2]: img_url = r'https://pic3.zhimg.com/7aee516e83573c0a4d8b58de3e522c72_b.jpg'
In [3]: urllib.urlretrieve(img_url,'abc.jpg')
Out[3]: ('abc.jpg', <httplib.HTTPMessage instance at 0x23084d0>)
In [4]: ll
total 160
-rw-r--r-- 1 root 137271 Feb 25 11:29 abc.jpg
-rw-r--r-- 1 root 57 Feb 24 16:19 config.ini
drwxr-xr-x 2 root 4096 Feb 25 10:24 imgdir/
-rw-r--r-- 1 root 3616 Feb 25 10:21 imgSpider.py
-rw-r--r-- 1 root 3996 Feb 25 10:40 imgSpider_v2.py
-rw-r--r-- 1 root 4218 Feb 25 11:09 imgSpider_v3.py
===========
搞定了,python版本问题,我用了python3的
urllib使用urllib.request
imgdir
目录里面有内容吗?