我是靠谱客的博主 高兴寒风,最近开发中收集的这篇文章主要介绍pandas网络爬虫(一),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

说到网络爬虫,就要提到正则表达式和urllib库

python自带re模块和urllib模块

--------------------------------------------------------------------------------------------------------------------------------

正则表达式

正则表达式,又称规则表达式,通常用来检索、替换那些符合某个模式(规则)的文本。

1.原子

w:用来匹配字母、数字、下划线;

d:用来匹配数字;

s:用来匹配空白字符;

W、D、S用来匹配与w、d、s相反的字符。

2、元字符

.:用来匹配任意字符;

^:用来匹配开始位置;

$:用来匹配结束位置;

*:表示重复0次及以上;

?:表示重复0次或一次;

+:表示重复一次及以上;

{3}:表示恰好出现3次;

{3,}:表示至少出现3次;

{4,7}:表示至少出现4次,至多出现7次;

t|s:表示出现t或者s;

[jsz]:表示出现j/s/z中的任意一个;

3.模式修正符

i:不区分大小写;

M:多行匹配;

U:根据unicode进行匹配;

S:让”.“也匹配换行符;

4.贪婪模式与懒惰模式

贪婪模式:尽可能多的匹配;

懒惰模式:尽可能少的匹配;

如上所示:pat就是贪婪模式,pat2就是懒惰模式。

5.正则表达式函数

有re.match函数、re.search函数、全局匹配函数和re.sub函数。

re.match函数要从头开始匹配,举例子如下:

全局匹配函数就要会找到所有符合规则的子字符串,而不像search函数只会匹配到第一个复合条件的。

re.compile(pat).findall(string)

pat指的是正则规则,string表示要查找的文本。

re.sub是个正则表达式方面的函数,用来实现通过正则表达式,实现比普通字符串的replace更加强大的替换功能。简单的替换功能可以使用replace()实现。

----------------------------------------------------------------------------------------------------------------------------------

要系统学习urllib模块,我们从urllib基础开始。这个知识点中,我会向大家介绍urlretrieve()函数、urlcleanup()函数、info()函数

以及getcode()函数、geturl()函数等。

urllib.request.urlretrieve(url,filename=None)

利用urlretrieve() 将数据下载到本地。

- 参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件保存数据。)

urlcleanup()

可以将urlretrieve()中的缓存清理掉;

info()

可以将当前的基本环境信息显示出来;

getcode()

获取当前的网页的状态码,geturl()获取当前的网页的网址, 200状态码表示网页正常,403表示不正常。

------------------------------------------------------------------------------------------------------------------------------------

自动模拟HTTP请求

1.get请求

如上所示,这就是一个简单的get请求以及网络爬虫

https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=python&oq=python&rsv_pq=97f9cf6d0003595c&rsv_t=fcb7JtYRoovz9V3yOoFkx6Q61ZRxJN73%2BKxJrCuYB2lpWty6GxAxo4uuUco&rqlang=cn&rsv_enter=1&rsv_sug2=0&rsv_dl=tb&inputT=6&rsv_sug4=7

这是一个百度搜索的网址,一些繁琐的东西我们可以拿掉,保留下重要的信息

http://www.baidu.com/s?wd=        (这就是我们经过分析得到的规则)

2.post请求

首先,我们打开https://www.iqianyue.com/mypost/网页,查看源代码,找到我们要提交的内容

name属性里面就是我们要提交的内容,有时候我们需要进行抓包,找到提交表单的正确url

这就是提交表单前和表单后的网页。

 

学习一定要多敲代码,多敲,多敲,一点点地进步!!

最后

以上就是高兴寒风为你收集整理的pandas网络爬虫(一)的全部内容,希望文章能够帮你解决pandas网络爬虫(一)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部