使用xpath requests下载.txt文件
注意:requests获取的str格式,如果需要.txt文件则需要encode()
import requests
from lxml import etree
"""
利用requets xpath下载对应文件
"""
url = "https://www.openvswitch.org/support/dist-docs/"
#获取url
resp = requests.get(url) #使用requests访问网页,由于此处网页没有中文,所以不用encoding
et = etree.HTML(resp.text) #将获取到的网页内容提供给et,将得到一个element对象
links = et.xpath("//td/a[3]/@href") #td标签下的a标签的第3个值的href属性
#拼接url
for link in links:
new_url = url + link
#下载文档,并保存
data = requests.get(new_url).text.encode() #得到的数据是str;.txt文档需要用encode();否则会提示TypeError: a bytes-like object is required, not 'str
with open(link,mode="wb") as f: #使用link变量作为文件名,直接保存
f.write(data)