python3 爬虫-入门

1.最简单的爬虫

爬百度的首页,并打印数据:

# -*- coding: utf-8 -*-
# 导入库
from urllib import request
# 请求
response = request.urlopen("http://www.baidu.com/")
# 解码
content = response.read().decode('utf-8')
# 输出
print(content)

2.增加搜索参数

在百度中搜索“中国”:

import urllib.request

data = {}
# word=中国
data['word'] = '中国'

url_values = urllib.parse.urlencode(data)
url = "http://www.baidu.com/s?"
# 组合搜索的get请求
full_url = url + url_values
# 请求
data = urllib.request.urlopen(full_url).read()
# 解码
data = data.decode('UTF-8')
# 打印
print(data)

3.爬出图片地址

爬出豆瓣的页面,然后,正则匹配出图片地址。

# -*- coding: UTF-8 -*-
import urllib.request
import re
import ssl

ssl._create_default_https_context = ssl._create_unverified_context


# 获取html数据
def getHtml(url):
    page = urllib.request.urlopen(url)
    html_data = page.read()
    return html_data


# 获取图片列表
def getImg(html_data):
    # src=" 开头 .jpg  > 结尾
    reg = r'src="(.+?\.jpg|.png)">'
    image_reg = re.compile(reg)
    image_list = re.findall(image_reg, html_data)
    return image_list

html = getHtml('https://site.douban.com/120100/')

html_str = html.decode('utf-8')
# 输出图片列表
print(getImg(html_str))

说明:

1.现在的网页基本都是https所以要加ssl模块:

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

4.下载图片

# coding=utf-8

import urllib
import urllib.request
import re
import ssl

ssl._create_default_https_context = ssl._create_unverified_context


def getHtml(url):
    page = urllib.request.urlopen(url)
    html_data = page.read()
    return html_data


def getImg(html_data):
    # src=" 开头 .jpg  "> 结尾
    reg = r'src="(.+?\.jpg|.png)">'
    img_reg = re.compile(reg)
    img_list = re.findall(img_reg, html_data)
    return img_list


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值