req = urllib2.urlopen('http://www.imooc.com/course/list')
buf = req.read()
listUrl = re.findall(r'src=.+\.jpg"', buf)
listUrl2 = []
for u in listUrl:
listUrl2.append(re.search(r'http:.+\.jpg', u).group())
i = 0
会得到两个图片地址,所以先得到src="",然后重新查找得到
buf = req.read()
listUrl = re.findall(r'src=.+\.jpg"', buf)
listUrl2 = []
for u in listUrl:
listUrl2.append(re.search(r'http:.+\.jpg', u).group())
i = 0
会得到两个图片地址,所以先得到src="",然后重新查找得到
2017-09-18
应该改成[a-zA-Z0-9]{6}@163\.com。
如果“.”前面没有加"\",那“.”就是匹配任意一个字符。
如果“.”前面没有加"\",那“.”就是匹配任意一个字符。
2017-09-11
https://github.com/guyunzh/crawler_imooc_jpg
我增加了几个功能,老师爬取的只是一个页面的图片,我的可以自己在想创建的地方保存图片,切可以保存多个页面的图片,手动输入想要爬取的页面个数,就可以自动创建对应的文件夹来保存对应的页面图片,还可以去重。
仍有很多完善的地方,但是,毕竟自己会爬取了
感觉好的点个star,谢谢哈
我增加了几个功能,老师爬取的只是一个页面的图片,我的可以自己在想创建的地方保存图片,切可以保存多个页面的图片,手动输入想要爬取的页面个数,就可以自动创建对应的文件夹来保存对应的页面图片,还可以去重。
仍有很多完善的地方,但是,毕竟自己会爬取了
感觉好的点个star,谢谢哈
2017-09-11
\<number> 是之前分组()的内容,?p<name>和?p=name 和\<number>的目的是一样的,对之前分组的一个引用,不过当有多个分组时 可以用?p<name>标记。引用,更方便
2017-09-06
re模块中有 compile match等功能函数 可用 dir(re)查看re的所有属性。s=re.compile(r'***')定义一种匹配字符串规则,s指向。y=s.match(' '),用match函数匹配s规则的字符串,并返回结果。dir(y),查看属性,y.group()输出匹配结果。谢谢老师,讲的很好,希望没理解错。
2017-09-06
https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386832260566c26442c671fa489ebc6fe85badda25cd000
廖雪峰老师的一页纸比这深入浅出多了,这个视频讲得太乱了,思路不够清晰,排版不好。不想说什么,可汗学院也没这么不走心啊
廖雪峰老师的一页纸比这深入浅出多了,这个视频讲得太乱了,思路不够清晰,排版不好。不想说什么,可汗学院也没这么不走心啊
2017-09-01
排版太差,在IDE和terminal之间切换不好,在IDE里的代码不利于规整的教学。
也不解释一下compile,调用re里的方法的时候,实际上都有一个先编译(compile)的过程,把compile显式写出来只是加快速度,节省调用方法时的反复编译,这个东西完全可以放到后面提一下,但是直接实例化了之后(还把代码上下之间分开了写),容易把人搞晕
也不解释一下compile,调用re里的方法的时候,实际上都有一个先编译(compile)的过程,把compile显式写出来只是加快速度,节省调用方法时的反复编译,这个东西完全可以放到后面提一下,但是直接实例化了之后(还把代码上下之间分开了写),容易把人搞晕
2017-09-01