简易文本爬虫

正则表达式

1、使用re.findall(所有符合条件的)一般查找列表结果就是所获得值

         re.search(一条符合记录的)  通过Match对象内的group编号或命名,获得对应的值

    title = re.research('<title>(.*?)</title>',html,re.S).group(1)    //re.S  能包括换行符

    使用sub(替换)实现换页功能

2、常用符号

      .   :匹配任意字符,换行符\n除外

     *   :匹配前一个字符0个或无限多个

    ?   :匹配前一个字符0次或1次

    .*   :贪心算法,尽可能长的匹配

    .*?   :非贪心算法,尽可能短的匹配

   ()   :括号的数据作为数据返回





import re

import requests


f = open('source.txt','r')

html = f.read()

f.close()


pic_url = re.findall('img src="(.*?)" class="lessoning"',html,re.S)


i=0

for each in pic_url:

       pic = requests.get(each)

      fp = open('pic\\'+str(i)+'.jpg','wb')

     fp.write(pic.content)

      fp.close()

      i+=1

你可能感兴趣的:(python)