没有合适的资源?快使用搜索试试~ 我知道了~
用python编写网络爬虫.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 152 浏览量
2022-06-22
09:46:08
上传
评论
收藏 38KB DOCX 举报
温馨提示
试读
5页
。。。
资源推荐
资源详情
资源评论
刚刚开了一个《计算机网络》的课,觉得很有用。正好师兄让我练习编写一个能下载网站网
页的程序,正好能用上课上的知识了。为了想作一个效率不差的,而下载网页的性能瓶颈是
在网络上,所有决定用 Python 编写代码。刚学 python 没几天,学习一种语言的最好方法就
是写 code.下面的是我用的多线程实现的网络爬虫,并用 py2exe 生成了一个 exe,自身觉得
py2exe 不太好,又不会更好的,只能......
这是我这些天的成果。希望有人能提出好的建议,先谢谢了!一共两个文件,一
个是 toolbox_insight.py,是一个工具文件另一个是test.py,是一个用到toolbox_insight.py 中
工具的测试文件
#: toolbox_insight.py
from sgmllib import SGMLParser
import threading
import time
import urllib2
import StringIO
import gzip
import string
import os
#rewrite SGMLParser for start_a
class Basegeturls(SGMLParser): #这个 Basegeturls 类作用是分析下载的网页,把网页中的
所有链接放在 self.url 中。
def reset(self):
self.url = []
SGMLParser.reset(self)
def start_a(self, attrs):
href = [v for k, v in attrs if k == 'href']
if href:
self.url.extend(href)
#for quickly finding
class Newlist(list):#这个类其实是一个添加了 find 方法的 LIST。当 num 变量在 LIST 中,返
回 True,当不在 LIST 中,返回 False 并把 num 按二分法插入 LIST 中
def find(self, num):
l = len(self)
first = 0
end = l - 1
mid = 0
if l == 0:
self.insert(0,num)
return False
while first < end:
mid = (first + end)/2
if num > self[mid]:
first = mid + 1
elif num < self[mid]:
end = mid - 1
资源评论
不吃鸳鸯锅
- 粉丝: 8287
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- IMG_2976.jpg
- cesiumVersionChanges1.117
- MI4953-VB一款SOP8封装2个P-Channel场效应MOS管
- MI4946-VB一款SOP8封装2个N-Channel场效应MOS管
- MI4904-VB一款SOP8封装2个N-Channel场效应MOS管
- 企业数字化转型顶层设计与企业架构TOGAF 9.2
- 01-basic-sample-20220716164705
- Serial Port Utility(1).zip
- MI4825-VB一款SOP8封装P-Channel场效应MOS管
- 基于Django实现配置管理系统 资产管理系统源码+在线演示+运行说明.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功