__author__ = 'Administrator'
# -*- encoding=gbk -*-
import requests
import os
from bs4 import BeautifulSoup
from urllib.parse import urlparse
r=requests.get('http://xiachufang.com/')
soup=BeautifulSoup(r.text)
img_list=[]
for img in soup.select('img'):
if img.has_attr('data-src'):
img_list.append(img.attrs['data-src'])
else:
img_list.append(img.attrs['src'])
image_dir=os.path.join(os.curdir,'images')
print(image_dir)
print(os.curdir)
if not os.path.isdir(image_dir):
os.makedirs(image_dir)
for img in img_list:
o=urlparse(img)
filename=o.path[1:].split('@')[0]
filepath=os.path.join(image_dir,filename)
print(img.split('?')[0].split('@')[0])
resp=requests.get(img.split('?')[0].split('@')[0])
with open(filepath,'wb') as f:
for chunk in resp.iter_content(1024):#设置写入缓存块大小
f.write(chunk)
urllib
python3标准库
parse
from urllib.request import urlopen
r=urlopen("http://httpbin.org/get")
r.read()#得到二进制内容
text=r.read().decode("utf-8")#解码一下得到字符串,因为在这个网站里面得到的内容是JSON格式的内容,可以用一个json.loads(r)
r.status#返回胡请求结果200
r.reson#描述信息
dir(r)#得到全部的方法,所有的对象都有这一个方法
r.headers#得到头信息
xpath 是一门在xml文档中查找信息的语言
概念
节点
元素、属性、文本、合名空间、文档(根)节点
节点关系
父
子
同胞
先辈
后代
表达式
// 从任意子节点选取
/ 从根切点选取
。 从当前节点选取
。。 当前节点的父节点
@取属性