博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习爬虫时遇到的问题TypeError: cannot use a string pattern on a bytes-like object
阅读量:5845 次
发布时间:2019-06-18

本文共 835 字,大约阅读时间需要 2 分钟。

hot3.png

import reimport urllib.request                       -----1def gethtml(url):    page=urllib.request.urlopen(url)          ------2    html=page.read()    return htmldef getimg(html):    reg = r'src="(.*?\.jpg)"'    img=re.compile(reg)    html=html.decode('utf-8')#python3             ---------3    imglist=re.findall(img,html)    x = 0    for imgurl in imglist:        urllib.request.urlretrieve(imgurl,'%s.jpg'%x)        x = x+1html=gethtml("http://news.ifeng.com/a/20161115/50258273_0.shtml")print(getimg(html))

上面标了1,2,3,的三个地方Python3.0及以上版本在学爬虫是需要注意的, 如果没有这代码的话可能会出现以下情况

  1. TypeError: cannot use a string pattern on a bytes-like object 这种情况解决方法就是加上html=html.decode('utf-8')#python3这句代码
  2. AttributeError: module 'urllib' has no attribute 'urlopen'这种情况的解决办法就是将urllib改成urllib.request就行了

参考于>

转载于:https://my.oschina.net/u/3347942/blog/1585679

你可能感兴趣的文章
1080*1920 下看网站很爽
查看>>
Android类参考---Fragment(一)
查看>>
CMake 构建项目Android NDK项目基础知识
查看>>
算法 - 最好、最坏、平均复杂度
查看>>
MySQL 不落地迁移、导入 PostgreSQL - 推荐 rds_dbsync
查看>>
[Erlang 0004] Centos 源代码编译 安装 Erlang
查看>>
51 Nod 1027 大数乘法【Java大数乱搞】
查看>>
三维重建技术概述
查看>>
socket跟TCP/IP 的关系,单台服务器上的并发TCP连接数可以有多少
查看>>
AI x 量化:华尔街老司机解密智能投资正确姿势
查看>>
IT史上十大收购案
查看>>
数据切分——Atlas介绍
查看>>
游戏引擎cocos2d-android使用大全
查看>>
oracle job 定时执行参数
查看>>
虚拟现实大潮渐近:Oculus VR、EA和Avegant等多家公司...
查看>>
Android命令Monkey压力测试,详解
查看>>
log4j2 mybatis 显示 sql 和 结果集
查看>>
负载均衡(LB)集群 dr
查看>>
(转)直接拿来用!最火的iOS开源项目(一)
查看>>
div+css+js 树形菜单
查看>>