pythonchallenge Lv05

这道题目网页的标题为peak hell,而文字里面提到了让我们“读”它,于是就能发现“peak hell”的发音和”pickle”很像,于是可以得知这题需要用到pickle模块。

又在网页源码中能找到一个文件,下载下这个文件后也能发现这个是一个序列化对象,需要用pickle模块载入。载入文件的结果为一个list和 set组合的 数组,其中最小的每项第一个数据为单个字符,第二个数据为数字,查资料后得知只需要把前面的字符打印后面数字的次数后就能得出结果。

我的代码

Continue reading “pythonchallenge Lv05″

pythonchallenge Lv04

http://www.pythonchallenge.com/pc/def/linkedlist.php

根据网页源代码里面的提示,在点击图片后会出来一个提示,让我们把一个数字写入到url中,新页面中也会有另一个提示,也让我们继续填数字。根据一开始的提示这个过程会循环400多次,所以必须要写代码来完成这个操作。

我的代码:

PS: a[len(a) – 1]可以用a[-1]来代替 Continue reading “pythonchallenge Lv04″

pythonchallenge Lv03

http://www.pythonchallenge.com/pc/def/equality.html

也是从网页源代码中可以取得数据

题目要求是找出左边和右边都正好有3个大写字母的小写字母

我的代码

Continue reading “pythonchallenge Lv03″

pythonchallenge Lv02

在网页源代码中可以找到信息。
在自己做的时候使用vim的正则表达式功能,将所有的非字母字符删除掉就可以看到答案

官方代码


 

Continue reading “pythonchallenge Lv02″

pythonchallenge Lv01

lv1:根据图片中的提示可以得出要求将所有的字母都右移两位。

官方代码


 

Continue reading “pythonchallenge Lv01″

python爬虫实战教程——爬取起点网示例

PS:在一开始声明下。。。编者并不看网络小说

需要用到的知识与模块

基础内容

  • 基础的HTML与js知识(如果这两个都不会的话。。。先去w3cschool自学下吧,反正基础的也不难)
  • urllib与urllib2:URL模块。需要用这个模块获取网页内容
  • re:正则模块,需要用正则表达式来分析上面获取到的网页文件,用于提取ip和文本内容。(爬虫的核心模块)

高级内容

  • os模块中的fork方法:linux下设置多进程的方法
  • multiprocessing模块:由于在windows下无法使用fork方法,所以在windows中可以用这个模块来代替。而且这个模块中有Pool(对象池)这个类,可以用Pool来管理进程,对多进程的管理更加方便。

分析起点网的html格式

要制作一个网页爬虫的话就首先需要对网页进行分析。那么,就先来看一个例子吧:

我们先看一下《唐砖》这本小说的目录页面:

2015-04-03 07:29:09屏幕截图

从这里可以看到,我们可以把该页面的层次分为三层:小说标题、每一卷的标题和下面的章节标题,点击章节标题后就可以跳转到小说相应的位置。我们在这里需要做的就是从该页面中提取出每篇章节的链接,用于下一步的爬虫操作。

 

Continue reading “python爬虫实战教程——爬取起点网示例”

代码高亮测试

测试测试测试测试