摘要: 最近在国外的服务器上跑爬虫脚本需要连接到国内内网的数据库,其间遇见了一些问题,这里提供一些解决方法。 首先什么是SSH: SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可 阅读全文
posted @ 2021-07-08 10:55 Ccdjun 阅读(519) 评论(0) 推荐(0) 编辑
摘要: Snowflake是Twitter提出来的一个算法,其目的是生成一个64bit的整数: 1bit:一般是符号位,不做处理 41bit:用来记录时间戳,这里可以记录69年,如果设置好起始时间比如今年是2018年,那么可以用到2089年,到时候怎么办?要是这个系统能用69年,我相信这个系统早都重构了好多 阅读全文
posted @ 2021-06-04 11:08 Ccdjun 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 引言:异步协程本质就是一条线程中多个任务遇到阻塞操作就自动挂起并继续执行下一个任务,等待阻塞操作完成之后再回去执行完剩余的操作。涉及的模块:aiohttp,asyncio。 协程的作用: 减轻了操作系统的负担 用来规避IO操作,就达到了我们将一条线程中的io操作降到最低的目的 一条线程如果开了多个协 阅读全文
posted @ 2021-04-20 21:50 Ccdjun 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 免责声明:本文仅供学习学习参考使用,不能用于恶意攻击网站。考虑到安全性以及法律问题本人仅仅提供部分代码以及破解思路。 思路: 首先Boss采用的反爬虫机制是IP封禁,以及所有内容都是动态加载的。既然是动态加载的都需要借助selenium和驱动或者splash。这里我所使用的是selenium。对于I 阅读全文
posted @ 2021-04-20 20:32 Ccdjun 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 引言:之前就提到过常见的反爬虫机制就有IP封禁,就是当你访问频率超过一个阀值服务器就会拒绝服务。这时网页就会提示“您的IP访问频率太高”,或者跳出一个验证码让我们输入,之后才能解封,但是一会后又会出现这种情况。这时我们就可以通过代理IP来进行请求就可以完美解决这个问题。但是通常各大网站上提供的代理I 阅读全文
posted @ 2021-04-17 23:48 Ccdjun 阅读(758) 评论(0) 推荐(0) 编辑
摘要: 引言:在介绍Cookies前我们需要了解HTTP的一个特点叫做无状态。什么是无状态就是当你访问动态网站也就是需要登陆的网站时HTTP对事务处理是没有记忆能力的。就比如你想访问某个网站上个人信息的页面。直接发请求是访问不到的。必须在登陆状态下才能访问到。而Cookies里保存了登陆的凭证,有了他只需要 阅读全文
posted @ 2021-04-17 01:08 Ccdjun 阅读(1401) 评论(0) 推荐(0) 编辑
摘要: 引言:前面介绍的都是对单个网页的爬取,假如你想同时对多个网页进行爬取呢?这是你肯定会想到构建一个url列表然后循环遍历访问,首先我们知道无论是get请求还是post请求,都是同步阻塞操作。因为程序都是从上往下依次执行的,你给一个网站发起请求就必然等待接受到结果才会对下一个网站发起请求。这样是不是大大 阅读全文
posted @ 2021-04-15 23:50 Ccdjun 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 对比其他语言来说,python中的文件句柄操作是即简洁又简便。常用保存形式有TXT,JSON,CSV。本文就介绍了CSV文件存储 写入: 这里先看一个最简单的例子 import csv with open('./data.csv',mode='w') as csvfile: writer = csv 阅读全文
posted @ 2021-04-14 23:26 Ccdjun 阅读(2170) 评论(0) 推荐(0) 编辑
摘要: 浅copy: 在python中默认做浅copy,浅copy即copy一个外壳其中的id与原对象中的id相同。也就是说除了两对象的id不同,原对象和新对象中的元素的id相同即内存地址相同。所以对原对象中的可变元素的增删改会影响新对象。 import copy l1 = [1,2,3,[4,]] l2 阅读全文
posted @ 2021-04-12 21:18 Ccdjun 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 安装redisdump大部分问题都出在版本的问题,redis-dump是将redis和json互转的工具;redis-dump是基于ruby开发,需要ruby环境,而且新版本的redis-dump要求2.3.0及以上的ruby版本,centos中yum只能安装2.0版本的ruby。需要先安装ruby 阅读全文
posted @ 2021-04-11 21:56 Ccdjun 阅读(477) 评论(0) 推荐(0) 编辑