西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > 开发教程 > python教程 >

Python正则及单线程爬虫

时间:2016-01-15 17:55来源:未知 作者:好模板 点击:
正则 .:匹配任意字符,换行符\n除外 :匹配前一个字符0次或无限次 ?:匹配前一个字符0次或1次 .:贪心算法 .*?:非贪心算法 ():括号内的数据作为结果返回 findall:匹配所有符合规律的内容

正则

.:匹配任意字符,换行符\n除外
:匹配前一个字符0次或无限次
?:匹配前一个字符0次或1次
.:贪心算法
.*?:非贪心算法
():括号内的数据作为结果返回
findall:匹配所有符合规律的内容,返回包含结果的列表
search:匹配并提取第一个符合规律的内容,返回一个正则表达式对象(object)
sub:替换符合规律的内容,返回替换后的值

.的使用

 a = 'xz123'# b = re.findall('x....', a)
#点就是占位符 一个点就是一个字符
 print(b)
#123

*的使用

a = 'xzxyxxyxy123'
b = re.findall('x*', a) 
# 点就是占位符print(b)
#['x', '', 'x', '', 'xx', '', 'x', '', '', '', '', '']

?的使用

a = 'xz123'
b = re.findall('x?', a) 
# 点就是占位符print(b)
#['x', '', '', '', '', '']

.*的使用

secret_code = 'aiwjhdioawhdiohawoidhxxxxjiohjefisahihxxxxedklsfajxxxgggxxoiesjf'
b = re.findall('xx.*xx', secret_code)
print(b)
#['xxxxjiohjefisahihxxxxedklsfajxxxgggxx'] 匹配出中间的所有

.*?的使用

secret_code = 'aiwjhdioawhdiohawoidhxxxxjiohjefisahihxxxxedklsfajxxxgggxxoiesjf'
b = re.findall('xx.*?xx', secret_code)
print(b)
#['xxxx', 'xxxx', 'xxxgggxx']

(.*?)的使用

secret_code = 'aiwjhdioawhdiohawoidhxxxxjiohjefisahihxxxxedklsfajxxxgggxxoiesjf'
# (.*?)
b = re.findall('xx(.*?)xx', secret_code, re.S)
  # re.S make dot matches any charcter
print(b)
#['', '', 'xggg']

单线程爬虫

Requests介绍

Http for Humans python的第三方http库

  • 完美替代urllib2模块
  • 更多的自动化
  • 更友好的用户体验
  • 更完善的功能

安装

windows:

pip install requests

linux

sudo pip install requests

爬取youku主页所有节目标题

# coding=utf-8
import requests
import sysimport rereload(sys)
sys.setdefaultencoding("gb18030")
type = sys.getfilesystemencoding()
# headers是构造的一个字典,里面保存了user-agent
headers = {    'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36'}
html = requests.get('http://www.youku.com/', headers=headers)
html.encoding = 'utf-8'
# print html.text
#匹配出所有标题
title = re.findall('class="v-meta-entry"><span>(.*?)</span></div>', html.text, re.S)
#打印出所有的标题
for line in title:
    print(line)

结果

1704天体内辐射值爆表
小男友情人互掐
二次元经典VS真人版
每周一二三更新2集
请叫我女王大人
每日24时更新2集
白富美超市打工寻真爱
赢话题输口碑?
<机动战士敢 铁血>独播
<唐人街探案>主题曲曝光
嗨小冷
暴走每日一暴
大湿兄剧能说
爷爱怀旧
阿尔法小分队
上海滩抗日"007"
内地版继承者们
wuli郭涛智商爆表
姚笛复出!转正捉小三
他爱她她爱他他爱她
接地气!草根英雄逆袭
唐嫣告别"傻白甜"
良心好剧没有之一
赵本山也追的苦情剧
作女宁愿宝马车里哭
经典地雷战再现荧屏
抗日战争版杨门女将
如果梅长苏是撩妹高手
梨园英雄抗战传奇
烧脑!胡歌靳东喋血兄弟
富二代"变形"抗战楷模
范明让网友笑着流泪
太子高鑫变身暖萌司机
朴有天爱上超能少女
财阀之女的真实罗曼史
rm女王智孝追爱大势男
身世谜团真情化误解
财阀家庭的秘密与阴谋
绝症妈妈重逢初恋情人
李钟硕演绎复仇医生
女版梅长苏豪门斗法
玄彬挑战双重人格
美队女友开创"神盾局"
能播11季是有它的道理的
寻宝争夺战一触即发
卷福,你让我们等得好苦
25周年庆憨豆再现经典
神穿越抵抗生化危机
萌妹子引领监狱风云
(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容