美文网首页Python爬虫作业
爬虫基础_01——正则

爬虫基础_01——正则

作者: 王小鱼鱻 | 来源:发表于2017-06-03 11:12 被阅读62次

今天这个爬虫比较简单,爬了一下花瓣网(美女图)的一页的图片。
这里只用了正则,主要思想是:利用正则匹配要爬取的图片url,然后下载图片存到本地;
下面是具体的代码:

# encoding = utf-8
import re
import urllib
import requests

#获取图片的url
def getHtml(url):
    page = urllib.request.urlopen(url)
    html= page.read()
    return html
#获取网页的内容
html = getHtml('http://huaban.com/boards/481662/')
#正则匹配
p= r'<img src="([.*\S]*)" width="\d{3}"'
imgurls = re.findall(p, html.decode('utf-8'))

#爬取图片
x=1
for imgurl in imgurls:
    print('http:'+imgurl)
    urllib.request.urlretrieve('http:'+imgurl, 'F:images/huaban/%s.jpg' % x)

    print("downloading %d"%x)
    x +=1

下面是爬到的图片:

花瓣美女图.png
因为这个页面的图片是下拉加载的,所以暂时只下载了40张,这个问题还在学习,希望有前辈指导一二;
写的比较糙,有问题麻烦爬友们指出。
这里小弟写的时候有2个小问题:
1、正则的匹配,方式很简单易懂,开始使用可能不太容易匹配成功,要反复多试几次才能熟练掌握;
2、imgurls = re.findall(p, html.decode('utf-8'))这里如果没有带.decode('utf-8'),
就报错TypeError: cannot use a string pattern on a bytes-like object
3、正则的一些基本用法:
1)re.search(pattern, string, flags=0)
在字符串中查找,是否能匹配正则表达式。返回_sre.SRE_Match对象,如果不能匹配返回None。
2)re.match(pattern, string, flags=0)
字符串的开头是否能匹配正则表达式。返回_sre.SRE_Match对象,如果不能匹配返回None。
3)re.split(pattern, string, maxsplit=0)
通过正则表达式将字符串分离。如果用括号将正则表达式括起来,那么匹配的字符串也会被列入到list中返回。maxsplit是分离的次数,maxsplit=1分离一次,默认为0,不限制次数。
4、其他的一些正则的用法总结:
1、正则表达式
2、Python之re模块 —— 正则表达式操作
3、Python正则式的基本用法

相关文章

  • 爬虫基础_01——正则

    今天这个爬虫比较简单,爬了一下花瓣网(美女图)的一页的图片。这里只用了正则,主要思想是:利用正则匹配要爬取的图片u...

  • python爬虫入门

    入门python爬虫需要的基础知识:html,python,正则表达式。本文将着重围绕与爬虫相关的内容展开介绍。 ...

  • python爬虫系列-2

    1.系列文章列表 python爬虫系列-1 源码 这个爬虫是在第一篇的爬虫的基础上增加了文档正则匹配来获取所有的u...

  • 快递100信息抓取!Python就是这么神奇!

    爬虫这里主要是请求页面,然后是正则表达式过滤,基础的有Python的数据类型 tuple, list, str。 ...

  • 爬图-python

    写在前面: 爬取评论、图片是入门爬虫练习正则bs4的基础,不要想歪。 对url:https://www.nvshe...

  • L10:正则表达式基础

    爬虫常常获取到html文件,从中提取有效信息的一种方式就是用正则表达式,方法基础但是强大。正则表达式就是在字符串中...

  • 爬虫入门(1)-使用re和requeset

    前言 编写爬虫需要了解正则表达式,网上内容很多,但在爬虫应用中用到最多的正则表达式是 ‘(.*?)’ 在Pytho...

  • python爬虫01--爬虫基础

    哈喽,大家好!我是minisummer!首先感谢您的关注!今天给大家分享的内容是python爬虫基础知识。 什么是...

  • python爬虫学习-day7-实战

    目录 python爬虫学习-day1 python爬虫学习-day2正则表达式 python爬虫学习-day3-B...

  • Python 基础爬虫目录

    目录 python爬虫学习-day1 python爬虫学习-day2正则表达式 python爬虫学习-day3-B...

网友评论

    本文标题:爬虫基础_01——正则

    本文链接:https://www.haomeiwen.com/subject/hkvpfxtx.html