-
python scrapy.Request发送请求的方式
说明 1、使用scrapy.Request()指定method,body参数发送post请求。 2、使用scrapy.FormRequest()发送post请求,也可以发送表格和ajax请求。 实例 import scrapy class Git2Spider(scrapy.Spider): name = ‘git2’ allowed_domains = [‘github.com’] start_urls = [‘http://github.com/login’]…
-
python scrapy模拟登录的方法
1、requests模块。直接携带cookies请求页面。 找到url,发送post请求存储cookie。 2、selenium(浏览器自动处理cookie)。 找到相应的input标签,输入文本,点击登录。 3、scrapy直接带cookies。 找到url,发送post请求存储cookie。 # -*- coding: utf-8 -*- import scrapy import re class GithubLoginSpider(scrapy.Spider): name = …
-
python如何重写start_requests方法
说明 1、在scrapy中,start_url是由start_requests处理的,通过重写这种方法,start_url可以携带请求头信息。 2、cookie不能放在scrapy中的headers中,在构建请求时有专门的cookies参数,可以接收字典形式的cookie。 可能需要在settings中设置ROBOTS协议和USER_AGENT。 实例 import scrapy class Git1Spider(scrapy.Spider): name = ‘git1’ …
-
python scrapy处理翻页的方法
说明 1、根据scrapy这个框架的运行特点,翻页必须和处理数据分开,不然无法执行。 2、确定url地址,构造 url 地址的请求对象,把请求交给引擎。 构造请求 scrapy.Request(url, callback) callback:指定解析函数名称,表示该请求返回的响应使用哪一个函数进行解析。 实例 scrapy.Request(url, callback=None, method=’GET’, headers=None, body=None, cookies=None, meta=…
-
python scrapy如何建模
说明 1、定义从items.py文件中提取的字段。 2、scrapy.Item可以理解为更高级的字典,可以限制和验证键名。但是记住它不是字典。如果需要操作字典,可以使用dict()强制转换scrapy.Item。 实例 import scrapy class MyspiderItem(scrapy.Item): # define the fields for your item here like: name = scrapy.Field() # 讲师的名字 tit…
-
python scrapy数据建模的作用
说明 1、定义item就是提前计划好哪些字段需要抓取,防止手误,因为定义好之后,系统会在运行过程中自动检查。 2、配置注释可以清楚地知道要抓取哪些字段。没有定义的字段不能抓取,目标字段少的时候可以用字典代替。 3、使用scrapy的某些特定组件需要Item支持,例如scrapy的ImagesPipeline管道类。 实例 class MyspiderItem(scrapy.Item): name = scrapy.Field() # 讲师的名字 title = scrapy.…
-
python如何查看hdf5文件
说明 1、hdf5不支持用其他浏览器打开,建议写一个代码来进行读取。 2、读取HDF5文件中的所有数据集,然后传输到路径。 实例 # 读取HDF5文件中的所有数据集 def traverse_datasets(hdf_file): import h5py def h5py_dataset_iterator(g, prefix=”): for key in g.keys(): item = g[key] pat…
-
python中Task封装协程
说明 1、Task是Future的子类,Task是对协程的封装,我们把多个Task放在循环调度列表中,等待调度执行。 2、Task对象可以跟踪任务和状态。Future(Task是Futrue的子类)为我们提供了异步编程中最终结果的处理(Task类还具有状态处理功能)。 3、把协程封装成Task,加入一个队列等待调用。刚创建Task的时候不执行,遇到await就执行。 实例 import asyncio async def func(): print(1) await asyncio.slee…
-
python with遇到错误语句的处理
说明 1、将错误的类型、值和回溯传递给_exit__方法。 2、允许__exit__方法处理异常。 3、如果__exit__返回,True将得到妥善处理。如果True不返回任何其他内容(None),__exit__with语句会引起异常。 实例 Traceback (most recent call last): File “<stdin>”, line 2, in <module> AttributeError: ‘file’ object has no attri…
-
python muggle_ocr库的介绍
说明 1、muggle_ocr是一款轻量级的ocr识别库,对于python来说是识别率较高的图片验证码模块。 2、主要用于识别各种类型的验证码,一般文字提取效果稍差。 安装命令 pip install muggle_ocr 实例 import muggle_ocr # 初始化sdk;model_type 包含了 ModelType.OCR/ModelType.Captcha 两种模式,分别对应常规图片与验证码 sdk = muggle_ocr.SDK(model_type=muggle_ocr.…