自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4528)
  • 收藏
  • 关注

转载 Scrapy源码剖析之自定义Scrapy框架

from twisted.internet import reactor # 事件循环(终止条件,所有的socket都已经移除) from twisted.web.client import getPage # socket对象(如果下载完成,自动从时间循环中移除...) from twisted.internet import defer # defer.Def...

2019-09-01 17:43:00 69

转载 Scrapy源码剖析之自定义low版框架

isinstance(result,types.GeneratorType)  判断是否生成器 队列为空会等,block=False  不等会报错 reactor.callLater(0,self.next_request) from twisted.internet import reactor # 事件循环(终止条件,所有的socket都已经移除) from tw...

2019-08-31 18:33:00 65

转载 Scrapy源码剖析前戏之Twisted使用

from twisted.internet import reactor # 事件循环(终止条件,所有的socket都已经移除) from twisted.web.client import getPage # socket对象(如果下载完成,自动从时间循环中移除...) from twisted.internet import defer # ...

2019-08-31 18:17:00 87

转载 Scrapy源码流程简述

crawl与twisted原理一样 from twisted.internet import defer from twisted.web.client import getPage from twisted.internet import reactor def download(*args,**kwargs): print(args,kwargs) ...

2019-08-31 18:06:00 52

转载 Scrapy配置自定义scrapy命令

写的类要在settings.py中添加配置注册 scrapy --help 在spiders同级创建任意目录,如:commands 在其中创建 crawlall.py 文件 (此处文件名就是自定义的命令) 在settings.py 中添加配置 COMMANDS_MODULE = '项目名称.目录名称' 在项目目录执行命令:scrapy crawlall ...

2019-08-31 17:52:00 202

转载 Scrapy配置之爬虫中间件

# -*- coding: utf-8 -*- # Define here the models for your spider middleware # # See documentation in: # http://doc.scrapy.org/en/latest/topics/spider-middleware.html from scrapy impo...

2019-08-31 17:35:00 114

转载 Scrapy配置之下载中间件

1、process_request  下载完成,后续无需下载 2、process_response  比如有return response # -*- coding: utf-8 -*- # Define here the models for your spider middleware # # See documentation in: # http://do...

2019-08-31 17:10:00 101

转载 Scrapy之自定义Https证书

转载于:https://www.cnblogs.com/jintian/p/11439648.html

2019-08-31 16:58:00 573

转载 Scrapy之默认代理以及扩展代理

random.choices(m)  随机选择 settings:DOWNLOADER_MIDDLEWARES={'step8_king.middlewares.xxx':500,}  越小越优先 转载于:https://www.cnblogs.com/jintian/p/11439620.html

2019-08-31 16:54:00 91

转载 Scrapy配置之自动限速以及缓存

缓存:内存或本地文件,更近更快的地方拿到 HTTPCACHE_ENABLED=True  是否启用缓存策略 转载于:https://www.cnblogs.com/jintian/p/11439593.html

2019-08-31 16:49:00 573

转载 Scrapy框架扩展

在指定信号上注册操作 from scrapy import signals class MyExtend: def __init__(self,crawler): self.crawler = crawler # 钩子上挂障碍物 # 在指定信号上注册操作 crawler.signals...

2019-08-31 11:51:00 104

转载 pipeline补充

yield item 会执行 process_item def process_item  return item 交给下一个pipeline           raise DropItem  丢弃掉,不给下一个pipeline crawler.settings  crawler封装了settings 配置文件必须大写 # -*- coding: utf-8 -...

2019-08-31 11:37:00 59

转载 去除重复URL

//a[contains(@href,"link")]  contains相当于in(或的关系) class RepeatFillter(object):  判断URL重复 settings:PUPEFILTER_CLASS:"day96.duplication.RepeatFilter" 通过from_settings方法创建对象 class RepeatFilter(...

2019-08-31 11:20:00 261

转载 Scrapy回顾

转载于:https://www.cnblogs.com/jintian/p/11438331.html

2019-08-31 11:14:00 43

转载 基于pipeline实现标题和URL持久化

# -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: http://doc.scrapy.org/en/latest/topics/item-pipeline...

2019-08-31 11:00:00 105

转载 2 Main Layout Conventions of Matrix Calculus

考虑 \(x\), \(y\) 分别是 \(n\), \(m\) 维列向量, \(A\) 是 \(m\times n\) 矩阵, \(z\) 是标量. Numerator Layout 想象分子不变, 分母转置. Vector by vector 符合直观. Jacobian. \[ \frac{\partial y}{\partial x} = \begin{pmatrix} \f...

2019-08-30 15:53:00 156

转载 Array : 数组的常用方法

数组常用方法 对象通用方法 1.toLocalString() 数组中的每个元素都会调用toLocalString(),然后以逗号隔开, 拼接为字符串; 2.toString()  数组中的每个元素都会调用toString(),然后以逗号隔开, 拼接为字符串; 3.valueOf() 返回原数组 =======================================...

2019-08-29 09:00:00 96

转载 抽屉示例:递归获取所有页码

转载于:https://www.cnblogs.com/jintian/p/11421512.html

2019-08-27 23:48:00 97

转载 抽屉作业:初识scrapy并获取新闻标题

import io sys.stdout=io.TextIOWrapper(sys.stdout.buffer,encoding='gbl8030') 在window运行出现编码问题加上以上代码 extract()  对象转换为字符串 extract_first()  列表的第一个元素 // 表示子孙中  .// 当前对象的子孙中  / 儿子 /div 儿子中的div标签  ...

2019-08-27 23:47:00 71

转载 scrapy爬虫介绍

scrapy crawl chouti __nolog  执行 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬...

2019-08-27 23:37:00 57

转载 SQLServer分页查询方法整理以及批量插入操作SqlBulkCopy

分页查询 通用方法:sqlserver 2005 + ROW_NUMBER() OVER()方式: SELECT TOP 50 * FROM (SELECT *,ROW_NUMBER()OVER(ORDER BY ID) as rowID FROM TripDetail)as b where b.rowID >1010001 ; TOPNOT IN方式 : ...

2019-08-27 16:15:00 119

转载 JavaScript之事件循环,宏任务与微任务

事件循环 Event Loop 程序中设置两个线程:一个负责程序本身的运行,称为"主线程";另一个负责主线程与其他进程(主要是各种I/O操作)的通信,被称为"Event Loop线程"(可以译为"消息线程")。 所有任务可以分成两种,一种是同步任务(synchronous),另一种是异步任务(asynchronous)。同步任务指的是,在主线程上排队执行的任务,只有前一个任务执行完毕,才...

2019-08-26 20:51:00 72

转载 Android apk逆向:反编译,回编译,签名,打包。

Android apk逆向:反编译,回编译,签名,打包流程。 第一步: apk 反编译。 1) 打开命令行窗口,输入java -version, 检测当前java版本,若版本较低, 则下载JAVA SE, 需要添加环境变量。 2) 需要下载apktool, 需要添加环境变量,然后再命令行窗口输入apktool查看是否安装成功。 3) 在C:\Users\XXX\AppData\L...

2019-08-26 17:31:00 160

转载 本周总结(19年暑假)—— Part7

日期:2019.8.25 博客期:113 星期日 转载于:https://www.cnblogs.com/onepersonwholive/p/11509428.html

2019-08-25 23:11:00 37

转载 自定义异步IO模块开发

响应头和响应体是用两个换行分割的 sk.setblock(False)  不阻塞 host是IP 比如www.baidu.com也是host,IP地址也是 r,w,e=select.select() w是连接成功的socket对象 r是有数据返回的socket对象 IO多路复用:r,w,e=while 监听多个socket对象 异步IO:非阻塞的socket+IO多路复用...

2019-08-24 23:45:00 76

转载 自定义异步IO模块前戏

1、setblocking(0):无数据(连接无响应;数据未返回)就报错 2、IO多路复用 转载于:https://www.cnblogs.com/jintian/p/11406564.html

2019-08-24 23:31:00 61

转载 异步IO模块的使用

gevent:mokey.path_all  (找到所有socket,进行异步IO) gevent+requests=》grequests Twisted: reactor.run() 死循环 Tornado =》gevent > Twisted > Tornado > asyncio www.cnblogs.com/wupeiqi/articles/6229...

2019-08-24 23:28:00 94

转载 多进程实现并发请求

协程:在一个线程内指定切换 协程+异步IO aiohttp      asyncio  模块 封装http数据包   异步IO """ 可以实现并发 但是,请求发送出去后和返回之前,中间时期进程空闲 编写方式: - 直接返回处理 - 通过回调函数处理 """ ########### 编写方式一 ########### """ from...

2019-08-24 23:14:00 396

转载 多线程实现并发请求

多线程:不应该开太多,线程之间切换会消耗 编写方式 -直接返回处理      -通过回调函数处理 v.add_done_callback(done) 线程是CPU的最小工作单元,线程共享工作资源 """ 可以实现并发 但是,请求发送出去后和返回之前,中间时期线程空闲 编写方式: - 直接返回处理 - 通过回调函数处理 """ ######...

2019-08-24 23:07:00 945

转载 Web微信之获取用户消息

网站爬数据:1、url分析 请求方式 get / post       2、提交不能成功+cookies或headers 转载于:https://www.cnblogs.com/jintian/p/11406473.html

2019-08-24 22:59:00 152

转载 Web微信之发送微信消息

requests.post(url=url,json=post_dict) requests.post(url=url,data=json.dumps(post_dict),headers={'content_Type':'application/json;charset=utf-8'}) ensure_ascii=False  中文不会转化unicode编码 .strip() 去...

2019-08-24 22:55:00 344

转载 Web微信之用户信息初始化信息并展示

JS中:location.href=' '  跳转 转载于:https://www.cnblogs.com/jintian/p/11406438.html

2019-08-24 22:49:00 117

转载 Web微信之用户信息初始化

转载于:https://www.cnblogs.com/jintian/p/11406367.html

2019-08-24 22:26:00 161

转载 Nacos配置中心-源码解析

一:关于Nacos的思考 首先思考一个问题,Nacos作为配置中心,Nacos 客户端是怎么实时获取到 Nacos 服务端的最新数据? 其实客户端和服务端之间的数据交互,无外乎两种情况: 1.服务端推数据给客户端 2.客户端从服务端拉数据 zk作为配置中心,基于zk的watcher机制,配置发生变化通知客户端,Nacos也是同样...

2019-08-24 14:58:00 891

转载 Web微信之用户扫码

v=re.findall(' uuid="(.*)");',response.text) v是(.*)分组的内容,一个列表 from django.shortcuts import render,HttpResponse import requests import time import re import json CTIME = None QCODE...

2019-08-24 13:24:00 136

转载 Web微信流程介绍

转载于:https://www.cnblogs.com/jintian/p/11404344.html

2019-08-24 13:17:00 116

转载 《Java 8 in Action》Chapter 3:Lambda表达式

1. Lambda简介 可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表、函数主体、返回类型,可能还有一个可以抛出的异常列表。 匿名——我们说匿名,是因为它不像普通的方法那样有一个明确的名称:写得少而想得多! 函数——我们说它是函数,是因为Lambda函数不像方法那样属于某个特定的类。但和方法一样,Lambda有参数列表、函数主体、返回类型,还可能...

2019-08-24 10:28:19 62

转载 示例:自动登录博客园

rsa加密模块 转载于:https://www.cnblogs.com/jintian/p/11403234.html

2019-08-23 23:53:00 62

转载 示例:自动登录知乎

import requests from bs4 import BeautifulSoup # 1. 访问登陆页面,获取 authenticity_token i1 = requests.get('https://github.com/login') soup1 = BeautifulSoup(i1.text, features='html.parser') tag =...

2019-08-23 23:51:00 173

转载 BeautifulSoup模块详细介绍

安装lxml,引擎(解析器) soup=BeautifulSoup(html_doc,features="lxml") tag=soup.select('#link2')  选择器的方式 tag.name  获取标签名 children:儿子 标签和内容是不一样的类型 descendants:后代 clear:清空保留标签名  decompose:删除,不保留标签名 ext...

2019-08-23 23:12:00 70

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除