Python
文章平均质量分 54
shupppppppy
这个作者很懒,什么都没留下…
展开
-
【笔记】慕课-Python网络爬虫与信息提取-Scrapy框架(3)
实例4 股票数据Scrapy爬虫scrapy startproject BaiduStockscd BaiduStocksscrapy genspider stocks baidu.com进一步修改spiders/目录下的stocks.py文件配置stocks.py文件修改对返回页面的处理修改对新增URL爬取请求的处理源代码:import scrapyimport reclass StocksSpider(scrapy.Spider): name = "stocks"原创 2021-09-23 14:57:54 · 188 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-Scrapy框架(2)
Scrapy命令行格式 > scrapy <command>[options][args]命令行更好自动化,适合脚本控制 Scrapy的具体命令[options][args]Scrapy的常用命令:startprojectscrapy startproject [dir]创建一个新工程genspiderscrapy genspider [options] 创建一个爬虫settingsscrapy settings [options]获得爬虫配置信息cr原创 2021-09-22 09:18:04 · 240 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-Scrapy框架(1)
Scrapy 网络爬虫原理专业爬虫框架 5+2结构爬虫框架:实现爬虫功能的一个软件结构和功能组件集合5+2结构:五个模块,两个中间件已有实现,不需要修改:ENGINE SCHEDULER 、DOWNLOADER用户编写(配置):SPIDER(入口)、 ITEM、 PIPELINES(出口)ENGINE控制所有模块之间的数据流根据条件触发事件DOWNLOADER获得请求,并根据请求下载网页SCHEDULER调度和管理所有爬虫请求中间件DOWNLOADER MIDDLEWARE原创 2021-09-18 09:31:18 · 172 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-re库(4)
对笔记:re库(3)中的代码进行优化提高用户体验:加快爬虫速度(scrapy库)使用requests库和beautifulsoup库难以大幅提高速度提高速度:使用r.apparent_encoding来解析文本的编码格式需要一定时间原代码:def getHTMLText(url): try: r=requests.get(url,timeout=30) r.raise_for_status() r.encoding=r.apparent_encoding return r.tex原创 2021-09-17 09:15:33 · 236 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-re库(3)
match对象一次匹配的结果,包含很多匹配的相关信息match对象的属性:.string 待匹配的文本.re 匹配时使用的pattern对象(正则表达式)re.compile( r ).pos 正则表达式搜索文本的开始位置.endpos 正则表达式搜索文本的结束位置match对象的方法.group(0) 可以获得第一次匹配后的字符串结果.start() 匹配字符串在原始字符串的开始位置.end() 匹配字符串在原始字符串的结束位置.span() 返回(.start原创 2021-09-16 09:08:06 · 211 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-re库(2)
Re库import reraw string类型(原生字符串类型) 不包含转义符\的字符串,即出现转义符\也不把它解释为转义的含义r’text’r’[1-9]\d{5}’ 表示国内邮政编码string类型包含转义符\,需要用\来避免被解释为转义的含义,更繁琐’text’’[1-9]\d{5}’ 表示国内邮政编码常用功能函数面向对象:match对象re.search(pattern,string,flags=0) 在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象原创 2021-09-15 09:12:14 · 106 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-re库(1)
Re 正则表达式regular expression regex提取页面关键信息常用于字符串匹配语法符号含义.表示任何单个字符[ ]字符集,对单个字符给出取值范围,比如[abc]、[a-z][^]非字符集,对单个字符给出排除范围,比如[^a]前一个字符0次或无限次拓展,比如abc*表示ab、abc、abcc…即c出现0次或多次+前一个字符1次或无限次拓展,比如abc+表示abc、abcc…?前一个字符0次或1次拓展,比如abc?表示ab、abc原创 2021-09-14 09:10:04 · 76 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-BeautifulSoup库(2)
JSON有类型键值对带有引号一对一 “key”:“value”一对多 “key”:[“value1”,“value2”]嵌套 “key”:{“subkey”:“subvalue”}YAML无类型键值对,没有任何引号和括号常用于配置文件缩进表示所属关系"-"表示同级并列关系key:valuekey:#Comment-value1-value2key:subkey:subvalue方法< tag >.find_all(name,attrs,recursive,原创 2021-09-13 11:01:53 · 184 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-BeautifulSoup库(1)
Beautiful Soup 解析HTML页面代码from bs4 import BeautifulSoupsoup=BeautifulSoup('<p>data</p>','html.parser') #'<p>data</p>'可以是使用requests库从html页面上爬取的源代码,还可以写成打开html/xml文件的形式open("D://demo.html")#'html.parser'是html解析器BeautifulSoup库作用原创 2021-09-09 15:04:44 · 106 阅读 · 0 评论 -
【笔记】慕课-Python网络爬虫与信息提取-Requests库(2)
robots.txt :网络爬虫标准“一个对网络爬虫的告知它内部资源能够被访问的权限”robots.txt 放在该网站的根目录下内容:User-agent:*Disallow:/(*代表所有)所有访问对象,比如爬虫、浏览器等(/代表根目录)不允许访问该根目录下的所有资源课程给出尝试访问以下链接:http://www.baidu.com/robots.txthttp://news.sina.com.cn/robots.txthttp://www.qq.com/robots.txtht原创 2021-09-07 16:44:53 · 151 阅读 · 2 评论 -
【笔记】慕课-Python网络爬虫与信息提取-Requests库(1)
Requests1、Requests库自动爬取HTML页面的源代码,自动网络请求提交。requests.requests(method,url,**kwargs)method:'GET','HEAD','POST','PUT','PATCH','delete','OPTIONS'**kwargs:params,data,json,headers...(访问控制参数)其中的method分别对应HTTP中的方法method。2、获取互联网上的资源 requests.get()r=req原创 2021-09-03 11:25:36 · 181 阅读 · 0 评论 -
【Python】记录一些容易被自己混淆和忽略的语法
反斜杠一般用于转义,而使用 r 可以让反斜杠不转义。如 r"hello world! \n" 则\n会显示\n,而不显示换行。Python通常是一行写完一条语句。如果语句很长,使用反斜杠 \ 来实现多行语句。在 [], {}, 或 () 中的多行语句,不需要使用反斜杠 \就能实现多行。可以在同一行中使用多条语句,语句之间使用分号 ; 分割。字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。0123210-1print 默认..原创 2021-08-11 17:18:58 · 74 阅读 · 0 评论 -
Python入门学习小记:100以内素数/质数之和
今天做到一题利用for循环求100以内素数之和的题目,发现自己在Python的语法上遇到了问题:这个else是谁的?在此记录以防下次又做错啦。题目很简单:100以内素数之和求100以内所有素数之和并输出。 ...原创 2019-09-24 00:08:53 · 11192 阅读 · 7 评论