zoukankan      html  css  js  c++  java
  • Python爬虫入门

     1 import urllib.request # 连接网络
     2 import urllib.parse # 爬虫传参数
     3 import json # json解析结果
     4 import re # 正则表达式
     5 import math # 生成随机数
     6 
     7 url = '' # 爬虫入口链接
     8 data = {} # 字典类型的参数
     9 
    10 data = urllib.parse.urlencode(data).encode('utf-8') # 处理参数
    11 
    12 req = urllib.request.Request(url,data) # 请求
    13 req.add_header('User-Agent', 'fake-client') # 添加头信息
    14 
    15 res = urllib.request.urlopen(req) # 获得响应信息
    16 html = res.read().decode('utf-8') # 读取响应信息,得到html页面信息
    17 
    18 # 正则表达式中如果有一个括号,那么匹配的内容就取括号里的那段返回列表,
    19 # 如果有多个括号,那么返回的是元组列表
    20 req = re.compile(r'<img.+?src="(.+?.jpg)" width') # 正则表达式匹配页面中的图片链接,.+?这里的?是启用非贪婪模式
    21 
    22 urlsImg = re.findall(req,html) # 从html中获取所有图片链接
    23 
    24 for urlImg in urlsImg:
    25     response = urllib.request.urlopen(urlImg) # 获取链接响应
    26     img = response.read() # 读取响应信息为二进制信息
    27     with open('img_%f.jpg'%(math.random()),'wb') as f:
    28         f.write(img) # 将二进制信息写到xxx.jpg图片里
  • 相关阅读:
    自我介绍
    最大连通子数组求和
    敏捷开发方法综述
    第四周学习进度条
    时间日志和缺陷日志
    最大子数组2.0
    最大子数组1.0
    第三周学习进度条
    小学四则运算3.0
    单元测试
  • 原文地址:https://www.cnblogs.com/suhfj-825/p/8309990.html
Copyright © 2011-2022 走看看