os.path.splitext() 的使用方法

#!/usr/bin/env python
# -*- coding: utf-8 -*-


import urllib
import urllib.request
import os

import requests
from lxml import etree

get_url = 'http://sc.chinaz.com/tupian/huangsetupian.html'

headers = {
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36',
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8'
}


response = requests.get(get_url, headers=headers)
response.encoding = 'utf-8'
html = response.text

tree = etree.HTML(html)

pic_urls = tree.xpath('//div[@class="box picblock col3"]/div/a/img/@src2')
pic_titles = tree.xpath('//div[@class="box picblock col3"]/div/a/img/@alt')


'''
>>> #定義參數內容
... import os
>>> path1='E:\test\6.txt'#文件路徑
>>> path2='E:\test'#目錄
>>>
>>> #用splitext()方法切割
... split_path1=os.path.splitext(path1)
>>> split_path2=os.path.splitext(path2)
>>>
>>> #打印結果
... print(split_path1)#正常切割
('E:\test\x06', '.txt')
>>> print(split_path2)#目錄切割後異常
('E:\test', '')
>>>
'''

for i in range(len(pic_urls)):

    # os.path.splitext() 返回的是一個元祖,取最後一個文件後綴名用[-1]
    suffix = os.path.splitext(pic_urls[i])[-1]

    # 因爲requests庫沒有下載的函數,所以這裏使用的是urllib.request.urlretrieve(url, filename) 函數下載。
    urllib.request.urlretrieve(url=pic_urls[i], filename='./站長/%s%s'%(pic_titles[i], suffix))





 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章