Crawl(2)

抓数据包真的好像有一点。。。。。难?

那么多数据包怎么分析。。。。

and,验证码越来越智能了,怎么破。。。

学的好慢啊。。。

先避开验证码吧。。。

下次来个杭电OJ爬之前写过的代码。

本次十八禁飙车记:爬取XX的清纯分类。嘿嘿嘿。

 1 # *-* coding: UTF-8 *-*
 2 import urllib2
 3 import cookielib
 4 import re
 5 import time
 6 import os
 7
 8
 9 ####################################
10 #cookie
11 cookie = cookielib.CookieJar()
12 handler = urllib2.HTTPCookieProcessor(cookie)
13 opener = urllib2.build_opener(handler)
14 #####
15 def mkdir(path):
16     path = path.strip()
17     # 判断路径是否存在
18     # 存在    True
19     # 不存在  Flase
20     isExists = os.path.exists(path)
21     if not isExists:
22         print u‘新建了名字叫做‘,path,u‘的文件夹‘
23         # 创建目录操作函数
24         os.makedirs(path)
25         return True
26     else:
27         # 如果目录存在则不创建,并提示目录已经存在
28         print u‘名为‘,path,u‘的文件夹已经创建成功‘
29         return False
30 #####
31 def saveImages(imglist,name):
32     print u‘共 %s张图片‘ %len(imglist)
33     number = 1
34     for imageURL in imglist:
35         fileName = name + "/" + str(number) + ".jpg"
36         # 对于每张图片地址,进行保存
37         try:
38             u = urllib2.urlopen(imageURL, timeout = 10)
39             print ‘1‘
40             data = u.read()
41             print ‘2‘
42             f = open(fileName,‘wb+‘)
43             print ‘3‘
44             f.write(data)
45             print u‘正在保存的一张图片为‘,fileName
46             f.close()
47         except Exception, e:
48             print Exception,":",e
49         break
50         #保存封面,大图一般太大,截图过大,容易超时
51         number += 1
52 #####
53 if __name__ == ‘__main__‘:
54     patter = r‘<span id="thread_(\d{7})">‘
55     reg = re.compile(patter)
56     for i in range(1, 5):#前5页
57         if i%10 == 0: print ‘now is %s‘ %i
58         req = urllib2.Request(‘http://38.103.161.179/forum/forumdisplay.php?fid=230&filter=type&typeid=172&page=%s‘ %str(i))
59         html = unicode(opener.open(req).read(), ‘gbk‘)
60         tar = reg.findall(html)
61
62         for jpos, j in enumerate(tar):#遍历所有子链接
63             req2 = urllib2.Request(‘http://38.103.161.179/forum/viewthread.php?tid=‘+j)
64             html2 = unicode(opener.open(req2).read(), ‘gbk‘)
65             endpos = html2.index(u‘附件</h4>‘)
66             stapos = html2.index(u‘格式‘)
67             html2 = html2[stapos:endpos]
68             #print html2
69             patter2 = r‘src="(.+?\.jpg)"‘
70             reg2 = re.compile(patter2)
71             tar2 = reg2.findall(html2)
72             path = u‘图集‘+str(i)+u‘之图‘+str(jpos)
73             mkdir(path)
74             saveImages(tar2, path)
75     exit()

时间: 2024-10-10 05:31:32

Crawl(2)的相关文章

nutch2 crawl 命令分解,抓取网页的详细过程

首先,何以见得crawl是inject,generate,fetch,parse,update的集成呢(命令的具体含义及功能会在后续文章中说明),我们打开NUTCH_HOME/runtime/local/bin/crawl 我将主要代码黏贴下来 # initial injection echo "Injecting seed URLs" __bin_nutch inject "$SEEDDIR" -crawlId "$CRAWL_ID" # ma

Scrapy错误-no active project Unknown command: crawl

在运行别人的scrapy项目时,使用命令行 scrapy crawl douban(douban是该项目里爬虫的名字,烂大街的小项目---抓取豆瓣电影). 执行之后,出现报错如下: 上网搜寻无果. 大多数是说路径不对,需要进入到项目工程的路径下,然而,我在项目的路径里. 听从建议使用了“scrapy”命令行之后发现,能使用的命令如下: 没有crawl,很奇怪.反复查看后,发现了那句no active project,说明我的工程有问题. 于是去看了看目录结构.查了下手册.在使用命令行startp

2016-10-10 14:23:33 scrapy crawl projectName (cannot import name &#39;_win32stdio&#39;)

1. 保存信息如下 D:\python3\BR16>scrapy crawl BR16B -L WARNING Unhandled error in Deferred: 2016-10-10 14:19:05 [twisted] CRITICAL: Unhandled error in Deferred: Traceback (most recent call last): File "d:\python35\lib\site-packages\scrapy\commands\crawl.

使用scrapy crawl name启动一个爬虫时出现的问题

使用scrapy crawl name启动一个爬虫时出现的问题,我的项目名字叫做 "spider_city_58",代码如下: from scrapy import cmdline cmdline.execute("scrapy crawl spider_city_58".split()) 来启动一个爬虫,却出现了如下错误 ImportError: No module named win32api 一开始尝试了网上其他的方法,就是去下载"pywin32-2

crawl spider

crawlspider 使用scrapy genspider -t crawl 文件名字 网址 crawlspider是什么? 也是一个spider,是Spider的一个子类,所以其功能要比Spider要强大 多的一个功能是:提取链接的功能,根据一定的规则,提取指定的链接 链接提取器 LinkExtractor( allow=xxx, # 正则表达式,要(*) deny=xxx, # 正则表达式,不要这个 restrict_xpaths=xxx, # xpath路径(*) restrict_cs

21天打造分布式爬虫-Crawl爬取小程序社区(八)

8.1.Crawl的用法实战 新建项目 scrapy startproject wxapp scrapy genspider -t crawl wxapp_spider "wxapp-union.com" wxapp_spider.py # -*- coding: utf-8 -*- import scrapy from scrapy.linkextractors import LinkExtractor from scrapy.spiders import CrawlSpider,

运行scrapy crawl (文件名)时显示invalid syntax和no modle &#39;win32api&#39;解决方案

使用pycharm爬取知乎网站的时候,在terminal端输入scarpy crawl zhihu,提示语法错误,如下: 原因是python3.7中将async设为关键字,根据错误提示,找到manhole.py文件,将文件中async参数全部更改为其它名,比如async1. 这时候运行scarpy crawl zhihu,显示如下错误: 解决方案: 原因是缺少win32,到 http://sourceforge.net/projects/pywin32/files/ 找到对应的版本进行下载,直接

用crawl spider爬取起点网小说信息

起点作为主流的小说网站,在防止数据采集反面还是做了准备的,其对主要的数字采用了自定义的编码映射取值,想直接通过页面来实现数据的获取,是无法实现的. 单独获取数字还是可以实现的,通过requests发送请求,用正则去匹配字符元素,并再次匹配其映射关系的url,获取到的数据通过font包工具解析成字典格式,再做编码匹配,起点返回的编码匹配英文数字,英文数字匹配阿拉伯数字,最后拼接,得到实际的数字字符串,但这样多次发送请求,爬取效率会大大降低.本次集中爬取舍弃了爬取数字,选择了较容易获取的评分数字.评

Scrapy运行项目时出错:Scrapy 0.16.2 – no active project,Unknown command: crawl,Use &quot;scrapy&quot; to see available commands

[问题] 通过Scrapy创建好了项目: 1 E:\Dev_Root\python\Scrapy>scrapy startproject songtaste 运行项目,结果出错: 1 2 3 4 5 6 E:\Dev_Root\python\Scrapy>scrapy crawl songtaste -t json -o h1user.json Scrapy 0.16.2 - no active project Unknown command: crawl Use "scrapy&q