爬取xiachufang图片试手

__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文档中查找信息的语言
概念
    节点
        元素、属性、文本、合名空间、文档(根)节点
    节点关系
        父
        子
        同胞
        先辈
        后代
    表达式    
    //        从任意子节点选取
    /        从根切点选取
    。        从当前节点选取
    。。    当前节点的父节点
    @取属性

 

你可能感兴趣的:(爬取xiachufang图片试手)