今天被一个python读写mysql的编码问题折腾了好几个小时,一开始还以为是Python3的中文编码的历史遗留问题,但最后发现是MariaDB(即Mysql)的锅。情况是这样的,有一批GBK编码的网页,用Python3的requests抓下数据后,主要写入代码如下: class Contract: conn = pymysql.conne...

继续阅读

    Python代码一直是讲究整洁的,其格式化的特性已经深入代码的编写,但是即使是这样从语法上限制格式还是有NB人士写出了下面的混乱代码,下面就是一段神奇的Python混乱代码,代码效果是生成彭罗斯铺砖图案:当这段代码运行时,它会产生一个1000×1000的png格式的彭罗斯铺砖图案,里面包含有大概2212个具有3D浮雕效果的彭罗...

继续阅读

晚上折腾Python写人人网爬虫,目标是所有好友的相册和个人资料以及通讯录信息,目前相册抓取借助网上一位TX发现的人人相册的小Bugs已经实现,晚上对两个以前不喜欢用的功能颇有所得,在这里暂且记录一下。     首先是Python内置的数据库引擎Shelve,Python的数据持久化操作主要有六类:普通文件、DBM文件、Pickled...

继续阅读

练习使用类、多线程、urlib库的时候写的一个东西,作用是从教务处抓取年级信息、班级信息、学生信息、学生成绩信息等。当时写得有些乱,纯三无产品,不过基本能用且网络好的情况下效率不低,多线程抓取,出错自动重试,需要的TX可以参考或者直接用来抓取数据。用到的库有urllib2,cookielib,os,sys,urllib,re,MySQLdb,threading,t...

继续阅读

Python多线程抓取

in Python

  将前几天初玩Python时写的一小段代码改装成了多线程处理的结构:N个抓取线程加上一个入库进程。基本上注释里已经写得比较清楚了,感觉Python对多线程的支持确实不错,经测试下面的代码在使用100线程抓取时仅占用8MB左右内存和6%左右的CPU:#encoding=utf-8 import threading import random imp...

继续阅读

让Python支持Mysql

in Python

在给Python安装Mysql支持时使用源码安装,结果出现了如下提示: D:\tddownload\Software\MySQL-python-1.2.3>python setup.py build Traceback (most recent call last): File "setup.py", line ...

继续阅读

Holmesian

一个80末的独立博客,潜伏互联网,崇尚各种实用技术,记录并分享生活与成长.