Python datetime.strftime() 格式化时间示例

2021年10月05日 ,作者: 黄兵

最近需要将 datetime 类型的数据转换成 string 类型数据,具体数据如下:2021-10-05 09:29:19使用 strftime() 函数将 datetime 类型转换为 string 类型数据,具体示例代码如下:exp_datetime.strftime('%Y-%m-%d %H:%M:%S')以下时间转换:07/28/2014 18:54:55.099000转换:exp_da...

AttributeError: 'str' object has no attribute 'items'

2021年10月05日 ,作者: 黄兵

最近在使用 Python Redis 库的时候,出现了如下错误:AttributeError: 'str' object has no attribute 'items'具体错误代码:conn = self._redis.conn_redis() conn.zadd('delay', row_id, delay) conn.zadd('schedule:', row_id, time.time...

Nginx 访问日志:记录真实用户 IP 而不是代理 IP

2021年10月01日 ,作者: 黄兵

如果您在代理或缓存引擎(如 Varnish 或 Squid)后面运行 Nginx,您将看到您的访问日志中充满了提及您的代理或缓存引擎的 IP 而非真实用户 IP 地址的行。要更改它,请在 http {} 部分的常规 nginx.conf 中添加以下行。log_format main '$http_x_forwarded_for - $remote_user [$time_local] ' '"...

关于 2021年9月27日14:30恶意点击总结

2021年10月01日 ,作者: 黄兵

最近由于恶意点击导致广告被停,具体情况在此总结:2021年7月27日14:30,流量突增,具体截图如下:于是又检查 nginx 日志,找到14:30左右,由于日志记录的是 UTC 事件,所以这里是6:30左右,日志截图如下:通过搜索 User-agent,这一个时间段大量这个 User-agent 出现。日志示例:123.123.0.123 - - [27/Sep/2021:06:33:11 +0...

URL 与 URI 的区别

2021年09月30日 ,作者: 黄兵

术语“URI”和“URL”经常互换使用,但它们并不完全相同。“URI”是一个标识符:标记特定的资源。就像一页、一本书或一份文件。“URL”是特殊类型的标识符:它告诉您如何访问它,比如HTTPs,FTP等。例如:https://www.pdflibr.com下图展示了 URI 与 URL 的关系:所有 URL 都是 URI,但并非所有 URI 都是 URL。参考资料:1、What’s the Dif...

爬虫系列:爬虫所带来的道德风险与法律责任

2021年09月30日 ,作者: 黄兵

使用网络爬虫做数据采集也应该有所不为。国内外关于网络数据保护的法律法规都在不断的制定与完善中,这篇文章主要从道德风险和法律责任两方面来分析爬虫做数据采集所带来的问题。道德层面:网络爬虫如果不严格控制网络采集的速度,会对被采集网站服务器造成很重的负担。恶意消耗别人网站的服务器资源,甚至是拖垮别人网站是一件不道德的事情。我作为一个站长,也经常遭到爬虫的无节制抓取,下面分享我自己的案例:在2018年11...

Flask Jinja2 获取环境变量

2021年09月29日 ,作者: 黄兵

在使用 Flask 开发网站的时候,发布的时候前端 css、js 等文件需要打包,但是开发的时候又需要未经打包的 css、js 文件,这就存在一个矛盾,为了使前端发布代码与开发代码加载不同的 css、js 文件,需要对当前环境进行判断。下面使示例代码:{% block scripts %} {{ super() }} {% if blog.video.isVidoe %} ...

纯 Javascript 操作 DOM class

2021年09月29日 ,作者: 黄兵

在页面上使用纯 Javascript 操作 class 属性,具体示例如下:增加 class 属性:var testarray = document.getElementsByClassName("currentclass"); for(var i = 0; i < testarray.length; i++) { testarray[i].className += " classt...