<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[本与太阳肩并肩，何须再用飞上天]]></title><description><![CDATA[吹牛，划水，聊技术]]></description><link>https://blog.youkuaiyun.com/MeteorCountry</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; MeteorCountry]]></copyright><item><title><![CDATA[djangorestframwork 简单使用]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/123921775</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/123921775</guid><author>MeteorCountry</author><pubDate>Sat, 02 Apr 2022 15:38:08 +0800</pubDate><description><![CDATA[安装
pip install djangorestframework
django中使用需做:
#在 setting 文件中的 INSTALLED_APPS 中添加 rest_framework

demo中需要使用的模型
from django.db import models

class ClassInfo(models.Model):
    id = models.IntegerField(primary_key=True)
    name = models.CharField(max_leng]]></description><category></category></item><item><title><![CDATA[python3异步编程，异步orm之 tortoise-orm]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/105170311</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/105170311</guid><author>MeteorCountry</author><pubDate>Sun, 29 Mar 2020 01:01:49 +0800</pubDate><description><![CDATA[前言:

去年下半年为了做了个web服务，使用了基于python3.5+的一个异步框架 sanic。

其中需要一个异步的mysql引擎，我们常见的也就是 aiomysql，为了便于开发，我找了一个基于 aiomysql 的简单封装的异步引擎SanicDB,事先说明这个不是orm, 然后到今年因为业务越来越多，使用 SanicDB 感觉也是很不方便，还导致代码不够清晰，然后我又发现了一个新的，真...]]></description><category></category></item><item><title><![CDATA[记录一次处理redis异常的文章]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/90476332</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/90476332</guid><author>MeteorCountry</author><pubDate>Thu, 23 May 2019 11:09:08 +0800</pubDate><description><![CDATA[抛出异常是这个样子的：

edis.exceptions.ResponseError: MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, beca...]]></description><category></category></item><item><title><![CDATA[cookie中的utma,utmb,utmc,utmz]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/89219877</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/89219877</guid><author>MeteorCountry</author><pubDate>Thu, 11 Apr 2019 21:03:14 +0800</pubDate><description><![CDATA[转载自：http://blog.sina.com.cn/s/blog_546abd9f0101b30g.html



Google Analytics设置了5个不同的cookie，_utma, _utmb, _utmc, _utmz和 _utmz。分别用来存储不同的信息。所有的cookie统一使用_u-t-m开头，所以我们看到这三个字母就知道是google的cookie。下面逐个介绍Goo...]]></description><category></category></item><item><title><![CDATA[爬虫与反爬之艺龙反爬(code值的生成，下,算法篇)]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/88936679</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/88936679</guid><author>MeteorCountry</author><pubDate>Sun, 31 Mar 2019 23:01:44 +0800</pubDate><description><![CDATA[开局一张图，其它全靠编。



这里可以看到此abcdefg方法总共有四步构成，1:判断参数dynamicScrip是否为空，2使用hijklmn方法处理字符串dynamicScrip(hijklmn方法下面就有,可以使用拿来原则)，3.eval 执行处理过的dynamicScrip字符串返回值为code,4.返回code值，到此结束。

我们只需要处理第三步就行了，之所以需要处理是因为我们需要用...]]></description><category></category></item><item><title><![CDATA[爬虫与反爬之艺龙反爬(code值的生成，上,参数篇)]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/88848956</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/88848956</guid><author>MeteorCountry</author><pubDate>Sun, 31 Mar 2019 23:01:34 +0800</pubDate><description><![CDATA[最近发现该网站的code值生成方式是改了又改(一周一改?简直是爬虫劝退)，难道是因为网络上的爬虫请求量增大了还是怎么回事！！
本文只提供学术研究。

肉文来了：

    此处针对详情页来研究，


 

通过debug可已找生成code的js函数 abcdefg, 其参数dynamicScrip(dynamicScript ="KP1XdhhXPrLWzxAhwj............]]></description><category></category></item><item><title><![CDATA[由python实现的单向链表来看python的基础概念(赋值,垃圾回收)]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/85019617</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/85019617</guid><author>MeteorCountry</author><pubDate>Wed, 26 Dec 2018 22:47:11 +0800</pubDate><description><![CDATA[之前只是对了解一些基础算法的概念，而并没有真正用代码取去实现过，所以准备在这段时间内把这些算法实现以下，第一个是单向链表，然而通过一个链表又让我想到了python的其它东西（相辅相成）。注：这里就不谈链表的概念了，只是说一说随着我脑洞大开而想到的其它东西。

好了先把我写的单链表给贴出来：


#单链表节点
class SingleNode:
    def __init__(self,item)...]]></description><category></category></item><item><title><![CDATA[JS加解密，python]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/84946340</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/84946340</guid><author>MeteorCountry</author><pubDate>Tue, 11 Dec 2018 00:26:19 +0800</pubDate><description><![CDATA[之所以写这篇文章是因为之前在做一些爬虫项目的时候遇到在url或者header头中的加密参数,每次请求都需要变换，如果用chromdriver来解析的话耗费资源比较高,且耗时长,而刚接触 js 逆向的时候真的是头皮发麻,另外这里不谈哪个网站的加密参数,只说方法。

 

到现在为止遇到的参数加密类型主要分为两类：

第一类： 在请求数据接口之前不需要发起其它请求,其中可能只需要你连接中的数个参数或者...]]></description><category></category></item><item><title><![CDATA[密码传纸条算法训练 -- python 实现]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/83624714</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/83624714</guid><author>MeteorCountry</author><pubDate>Thu, 01 Nov 2018 18:29:28 +0800</pubDate><description><![CDATA[今天解了一个很有意思的问题 -- 传纸条，(要求用python实现)题目如下:

李雷和韩梅梅坐前后排，上课想说话怕被老师发现，所以改为传小纸条。为了不被老师发现他们纸条上说的是啥，他们约定了如下方法传递信息：
将26个英文字母（全为大写），外加空格，一共27个字符分成3组，每组9个。也就是ABCDEFGHI是第一组，JKLMNOPQR是第二组，STUVWXYZ*是第三组（此处用*代表空格）。
然...]]></description><category></category></item><item><title><![CDATA[利用Python多线程限制 http 真实请求时间或限制函数最大执行时间的装饰器]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/82765919</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/82765919</guid><author>MeteorCountry</author><pubDate>Tue, 18 Sep 2018 23:48:29 +0800</pubDate><description><![CDATA[  这段时间在制作一个爬虫的时候发现了一个比较神奇的事情 python requests 包发起请求的时候设置 timeout 参数 竟然不起作用?

what 你要弄啥幺蛾子嘞,  后来各种找原因终于在别人的提醒下又看了下 requests 的文档才发现原来 timeout 设置超时只是指发起到对方服务器接受到请求这段时间,原文：timeout 仅对连接过程有效，与响应体的下载无关。 timeo...]]></description><category></category></item><item><title><![CDATA[通过Python利用ADSL服务器和tinyproxy构建数据自己的动态代理IP池,用django+redis做web服务 (优化版)]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/82729027</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/82729027</guid><author>MeteorCountry</author><pubDate>Tue, 18 Sep 2018 22:46:02 +0800</pubDate><description><![CDATA[代理池初始版：https://blog.youkuaiyun.com/MeteorCountry/article/details/82085238

上一篇文章中所搭建的代理池在使用过程中出现了点小问题，代理池中莫名的多出了一些无效代理，检查日志后发现是在更新代理池时旧的代理IP没有删除成功，就添加了新的代理IP。究其原因是因为在请求删除接口时网络已断开导致多次请求失败，跳过了删除这一步骤，进行了重拨、更新，...]]></description><category></category></item><item><title><![CDATA[通过Python利用ADSL服务器和tinyproxy构建数据自己的动态代理IP池,用django+redis做web服务,提供IP接口]]></title><link>https://blog.youkuaiyun.com/MeteorCountry/article/details/82085238</link><guid>https://blog.youkuaiyun.com/MeteorCountry/article/details/82085238</guid><author>MeteorCountry</author><pubDate>Tue, 04 Sep 2018 23:41:15 +0800</pubDate><description><![CDATA[应公司业务需求需要在一些地方使用代理,要求连通率高，速度快，最主要的还要便宜，对比多家供应商后，最后还是决定自购拨号服务搭建代理IP池。

需要配置：1.一台或多台adsl服务器（用以提供IP，可网上购买，通过ssh同域名连接）2.一台正常固定IP服务器拥来搭建IP代理池。(统一配置:python3.5以上环境)

具体配置：

1.在ADSL服务器上部署tinyporxy服务, 可以直接yum安...]]></description><category></category></item></channel></rss>