python爬虫
文章平均质量分 94
冰彡棒
每天进步一点点,你也可以在难受的时候,买一张机票去自己想去的地方,而不是躲在被窝里哭。
展开
-
07Python爬虫---Cookie实战
一、什么是Cookie 我们在浏览器中,经常涉及到数据的交换,比如你登录邮箱,登录一个页面。我们经常会在此时设置30天内记住我,或者自动登录选项。那么它们是怎么记录信息的呢,答案就是今天的主角cookie了,Cookie是由HTTP服务器设置的,保存在浏览器中,但HTTP协议是一种无状态协议,在数据交换完毕后,服务器端和客户端的链接就会关闭,每次交换数据都需要建立新的链接。就像我们去超市买东原创 2018-01-23 10:48:01 · 1414 阅读 · 0 评论 -
16Python爬虫---Scrapy目录结构以及项目创建
一、Scrapy目录结构 在分析之前项目结构的含义之前,我们会先创建爬虫项目。会生成一个与爬虫项目名称同名的文件夹,该文件夹下拥有一个同名的子文件夹和一个scrapy.cfg文件。 在同名文件夹mypyj1下存放的爬虫项目的核心代码scrapy.cfg文件主要是爬虫项目的配置文件同名子文件夹mypyj1包含init.py,items.py,piplines.py,sett...原创 2018-03-15 00:34:46 · 2865 阅读 · 0 评论 -
15Python爬虫---爬虫定向爬取腾讯视频网---利刃出击评论
先贴上代码后面补充上解析,代码缺陷没有对对评论的回复进行处理爬取import urllib.requestimport http.cookiejarimport re# ----------对象赋值--------------------------------------------class point(): pass# ----------对象赋值-------...原创 2018-03-09 00:29:02 · 2037 阅读 · 0 评论 -
16Python爬虫---Scrapy常用命令
常用命令1、全局命令全局命令即为不进入Scrapy爬虫项目所在目录的情况下,运行scrapy命令。运行scrapy -h,在commands下回出现所有的全局命令。分别为fetch、runspider、settings、shell、startproject、version、view。 其中bench命令比较特殊,虽然在Available commands中,但是仍然归为项目命令(...原创 2018-03-15 16:04:53 · 4104 阅读 · 0 评论 -
16Python爬虫---Scrapy多开技能
在Scrapy项目中创建一个文件夹存放我们自己编写的mycrawl文件,然后创建3个爬虫myspd1,myspd2,myspd3 项目结构 下面为mycrawl.py源码import osfrom scrapy.commands import ScrapyCommandfrom scrapy.utils.conf import arglist_to_dictfrom scrapy...原创 2018-03-16 22:37:03 · 535 阅读 · 0 评论 -
16Python爬虫---Scrapy小结
1、我们可以通过scrapy startproject -h调出startproject的帮助信息,在这里可以看到scrapy startprojcct具体可以添加哪些参数。2、如果我们想要删除某个爬虫项目,我们可以直接删除该爬虫项日对应的文件夹即可方式。3、可以使用 genspider命令来创建 Scrap爬虫文件,这是一种快速创建爬虫文件的4、爬虫的测试比较麻烦,所以在在 Scra...原创 2018-03-17 15:17:53 · 327 阅读 · 0 评论 -
11Python爬虫---爬虫实战小结
1)进行网页信息提取分析的时候,经常要学会寻找特殊标识,特殊标识要满足唯一性,并且包含要爬取的信息,以及尽量少的无关信息.2)通过爬虫进行自动化爬取,可以为我们省下很多事情。比如,有些站长需要采集些内容到自己的网站上,如果通过复制粘贴的方式,耗费的精力非常大,而采用爬虫的方式,我可以直接将关注的数据爬取下来,并可以用程序直接自动写进对应的数据库中,此时,网站上的内容就可以实现自动更新了。3...原创 2018-03-05 10:49:27 · 280 阅读 · 0 评论 -
12Python爬虫---Fiddler抓包工具使用
一、什么是Fiddler二、爬虫与Fiddler不得不讲的事三、Fiddler基本原理与界面1、Fiddler工作原理2、Fiddler界面3、捕捉会话功能四、Fiddler的QuickExec的简单使用1、cls2、select3、?4、help五、Fiddler断点功能1、使用Fiddler的断点,可以实现的功能:2、Fiddler断点功能分为两种...原创 2018-03-05 17:09:19 · 17017 阅读 · 13 评论 -
13Python爬虫---Fiddler断点应用实例
步骤: 1、设置好响应断点 2、打开www.baidu.com 3、网站响应被中断,继续响应获取服务器返回结果 4、修改返回结果,将响应信息返回给浏览器1、打开www.baidu.com2、点击该网址后,Fiddler右方可以编辑对应的响应信息,将标签切换为”TextView”,此时可以看到响应信息为乱码,可以点击界面中的”Responsebody is encoded...原创 2018-03-05 17:36:24 · 513 阅读 · 0 评论 -
19Python爬虫--爬取新浪新闻标题并保存到数据库
一、爬取新浪新闻思路1、创建scrapy项目2、分析新浪新闻网站静态页面代码3、编写对应的xpath公式4、写代码二、项目代码步骤1、创建scrapy项目创建爬虫文件scrapy startproject mysqlpjt进入项目目录后scrapy genspider -t crawl bangbing sina.com.cn...原创 2018-03-22 13:51:01 · 9041 阅读 · 8 评论 -
17Python爬虫---Scrapy爬取当当网特产
一、总体思路1、创建scrapy项目 2、分析当当网特产网址 3、分析出所取部分xpath公式 4、编写item 5、编写爬虫 6、编写pipline文件将取到的数据存入到文件中二、具体实践1、创建scrapy项目scrapy startproject autopjt2、分析当当网特产网址第一页http://category.dangdang.c...原创 2018-03-19 12:43:46 · 832 阅读 · 0 评论 -
20Python爬虫--Scrapy爬取和讯博客个人所有博客情况并保存到数据库
项目结构: Mysql数据库表创建语句CREATE TABLE `myhexun` ( `id` int(9) NOT NULL AUTO_INCREMENT COMMENT '文章的id', `name` varchar(60) DEFAULT NULL COMMENT '文章名', `url` varchar(100) DEFAULT NULL COMMENT '文章url',原创 2018-03-24 11:01:34 · 1055 阅读 · 8 评论 -
Scrapy安装和使用遇到的坑
坑一、遇到ypeError: ‘float’ object is not iterable,多半是因为twisted和scrapy不匹配python3 -m pip install Twisted==16.6.0安装老版本 如果安装报错的话,最简单的方法就是scrapy要安装最新版的,不是你将找不到符合的twisted版本去搭配坑二、 error: Microsoft Visual C+...原创 2018-03-14 16:13:28 · 460 阅读 · 0 评论 -
14Python爬虫---爬虫伪装浏览器
一、什么是浏览器伪装技术 有一些网站为了避免爬虫的恶意访问,会设置一些反爬虫机制,常见的饭爬虫机制主要有: 1、通过分析用户请求的Headers信息进行反爬虫 2、通过检测用户行为进行反爬虫,比如通过判断同一个IP在短时间内是否频繁访问对应网站等进行分析 3、通过动态页面增加爬虫的爬取难度,达到反爬虫的目的 第一种反爬虫机制在目前网站中应用的最多,大部分反爬虫网站会对...原创 2018-03-07 11:38:29 · 12145 阅读 · 0 评论 -
10Python爬虫---爬虫实战之糗事百科段子
目的:获取糗事百科段子 思路:1、爬取网页2、然后根据正则爬取出 关键内容3、根据关键内容 再用正则匹配出 对应的用户名和内容4、循环赋值进行输出源码:import urllib.requestimport redef getcontent(url, page): headers = ("User-Agent", "Mozilla/5.0 (Wi原创 2018-01-30 13:59:09 · 302 阅读 · 2 评论 -
08Python爬虫---正则和Cookie小结
(1)有时我们在进行字符串处理的时候,希望按自定义的规则进行处理,我们将这些规则称为模式。可以用正则表达式来描述这些自定义规则,正则表达式也称为模式表达式。(2)在 Python中,一般我们会使用re模块实现 Python正则表达式的功能。(3)正则表达式中常见的原子有:普通字符作为原子、非打印字符作为原子、通用字符作为原子、原子表。(4)模式修正符,可以在不改变正则表达式的情况下,通原创 2018-01-23 11:29:20 · 601 阅读 · 0 评论 -
03Python爬虫---延时以及GET和POST请求
一、超时设置import urllib.request# 如果想网站不出现超时异常就可以将timeout设置时间延长for i in range(1, 100): # 循环99次 try: file = urllib.request.urlopen("http://yum.iqianyue.com",timeout=1) # 超时设置为1s原创 2018-01-08 17:17:41 · 8986 阅读 · 0 评论 -
02Python爬虫---浏览器的模拟Headers属性
import urllib.request #导入包使用urlopen()访问有些网站时会出现403错误,禁止访问的错误,这就需要爬虫模拟成浏览器一、使用build_opener()修改报头1、注意urlopen()不支持一些HTTP的高级功能,所以使用urllib.request.build_opener()url = "http://blog.csdn.net/a原创 2017-12-20 00:43:54 · 1233 阅读 · 0 评论 -
01Python爬虫---快速使用Urllib爬取网页
环境使用python3.5import urllib.request # 导入模块一、采用获取网页信息,然后再写入文件中1、将获取的网页信息file = urllib.request.urlopen("http://www.baidu.com")data = file.read() # 读取网页全部内容 赋值给一个字符串变量dataline = file.re原创 2017-12-18 23:45:12 · 1143 阅读 · 0 评论 -
05Python爬虫---小结
(1) Urllib是 Python提供的一个用于操作URL的模块,在 Python2X中,有 Urllib也有Urllib2库,在 Python3x中 urllib2合并到了 urllib中,我们爬取网页的时候,经常需要用到这个库。(2)一般来说,URL标准中只会允许一部分 ASCII字符,比如数字、字母、部分符号等,而其他的一些字符,比如汉字等,是不符合URL标准的。所以如果我们在URL中原创 2018-01-15 16:31:19 · 222 阅读 · 0 评论 -
04Python爬虫---DebugLog和URLError的运用
一、DebugLog 有时我们希望边运行程序边打印调试日志,此时就需要开启DebugLog。 开启步骤: 1、分别使用 urllib. request Httphandler(和 urllib. request. Httpshandlero将 debuglevel设置为1 2、使用 urllib request build opener0创建自定义的 opener对象,并使用1原创 2018-01-15 16:23:52 · 298 阅读 · 0 评论 -
06Python爬虫---正则表达式01之原子
原子:正则表达式中最基本的组成单位,每个正则表达式中至少包含一个原子,原子有以下几类(1)普通字符作为原子(2)非打印字符作为原子(3)通用字符作为原子(4)原子表(1)普通字符作为原子import repattern = "yue"string = "http://yum.iqianyue.com"result = re.search(pattern,原创 2018-01-16 14:26:08 · 439 阅读 · 0 评论 -
06Python爬虫---正则表达式02之元字符
元字符表 符号 含义 . 匹配除换行符以外的任意字符 ^ 匹配字符串的开始位置 $ 匹配字符串的结束位置 * 匹配0次、1次或者多次前面的原子 ? 匹配0次或1次前面的原子 + 匹配1次或多次前面的原子 {n} 前面的原子恰好出现n次 {n,} 前面的原子至少出现了n次 {n,原创 2018-01-16 15:43:29 · 261 阅读 · 0 评论 -
06Python爬虫---正则表达式03之模式修正_贪婪模式与懒惰模式
一、修正模式 符号 含义 I 匹配时忽略大小写 M 多行匹配 L 做本地化识别匹配 U 根据Unicode字符及解析字符 S 让.匹配包括换行符,即用了该模式修正后,”.”匹配就可以匹配任意的字符了所谓模式修正,即可以在不改变正则表达式的情况下,通过模式修正符改变正则表达式的含义,从而实现一些匹配结果的调整等功原创 2018-01-16 16:47:31 · 1128 阅读 · 1 评论 -
06Python爬虫---正则表达式04之常用表达式
常用的正则表达式函数 re.match()函数、re.search()函数、全局匹配函数、re.sub()函数一、re.match()函数从源字符串的起始位置匹配一个模式 格式re.match(pattern, string, flag) 第一个参数代表对应的正则表达式,第二个参数代表对应的源字符,第三个参数是可选参数,代表对应的标志位,可以放模式修正符等信息import r原创 2018-01-20 15:56:47 · 221 阅读 · 0 评论 -
06Python爬虫---正则表达式05之实战
实例1:匹配.com或.vn后缀的URL网址import restring = "百度首页"pattern = "[a-zA-Z]+://[^/s]*[.com|.cn]"result = re.search(pattern, string)print(result) # 结果:首先观察: (1)固定的有://,可以写出来, (2)是.com、.cn结尾 那原创 2018-01-20 16:00:18 · 448 阅读 · 0 评论 -
09Python爬虫---爬虫实战之京东图片
目的:获取京东手机页面的图片 1、打开京东首页(www.jd.com),选择对应的”手机/运营商/数码”分类,并进入“手机”子分类 链接地址:https://list.jd.com/list.html?cat=9987,653,655&page=1 分析网页源码:找到对应的图片代码段: 思路:1、爬取网页2、然后根据正则爬取出 关键内容3、根据关键内容原创 2018-01-30 13:51:43 · 768 阅读 · 4 评论 -
18Python爬虫---CrawlSpider自动爬取新浪新闻网页标题和链接
一、爬取新浪新闻思路1、创建scrapy项目2、分析新浪新闻网站静态页面代码3、编写对应的xpath公式4、写代码二、项目代码步骤1、创建scrapy项目scrapy startproject mycwpjt步骤2、分析新浪网站静态代码随便打开一个新浪新闻网,新闻 可以看到地址为 http://news.sina.com.cn/gov...原创 2018-03-21 21:07:28 · 3059 阅读 · 2 评论