MM要学js,但是上不了网,要求我帮她把网上一个教程的相关内容抓出来,于是就有了下面的代码:

import urllib2

import urllib

import re

from sgmllib import SGMLParser

class URLLister(SGMLParser):

def reset(self):

SGMLParser.reset(self)

self.urls = []

def start_a(self, attrs):

href = [v for k, v in attrs if k=='href']

if href:

self.urls.extend(href)

js_root_url = "http://www.w3school.com.cn/js/"

#ep_root_url = "http://www.w3school.com.cn"

index_url = "index.asp"

f = urllib2.urlopen(js_root_url + index_url)

webfile = urllib.urlopen(js_root_url + index_url).read()

fp = file('index.asp', 'w+')

fp.write(webfile)

fp.close()

if f.code == 200:

parser = URLLister()

parser.feed(f.read())

f.close()

#url_pattern = re.compile(r'(^/js/js_|^/tiy/)\D*')

url_js_pattern = re.compile(r'^/js/js\D*')

#url_example_pattern = re.compile(r'^/tiy/\D*')

url_sub_js_pattern = re.compile(r'^/js/js')

for url in parser.urls:

if url_js_pattern.search(url):

url = url_sub_js_pattern.sub('js', url)

webfile = urllib.urlopen(js_root_url + url).read()

fp = file( url , 'w+')

fp.write(webfile)

fp.close()

但是现在还是有问题存在的,最明显的是,单击index页上的超链接无法访问抓取到的一级页面

python爬取jsp网页_帮MM用python抓取index及一级目录下的所有符合要求的网页相关推荐

  1. python爬wos数据库,分布式爬虫困惑,如何合理安排抓取/解析/储存?

    目前情况: 一个 50 个目标网站的爬虫项目,有个 200 台的集群服务器. 爬取的内容基本上是从列表页(需要翻页)开始,抓取详情页 url,然后通过 url 抓取详情页内容. 目前架构: maste ...

  2. python爬虫实时更新数据_爬虫的增量式抓取和数据更新

    一些想法 页面爬的多了,量上去了之后,就会遇到其他的问题,其实不管做什么技术量大了都会有问题.一般情况下,我认为解决"大量"问题的思路有两个:一种是着力于优化系统的能力,让原本只能 ...

  3. java抓取页面表格_用java实现爬虫抓取网页中的表格数据功能源码

    [实例简介] 使用java代码基于MyEclipse开发环境实现爬虫抓取网页中的表格数据,将抓取到的数据在控制台打印出来,需要后续处理的话可以在打印的地方对数据进行操作.包解压后导入MyEclipse ...

  4. python爬取资料怎么样_手把手教你Python爬取新房数据

    原标题:手把手教你Python爬取新房数据 项目背景 新房数据,对于房地产置业者来说是买房的重要参考依据,对于房地产开发商来说,也是分析竞争对手项目的绝佳途径,对于房地产代理来说,是踩盘前的重要准备. ...

  5. python爬虫百度百科-python爬虫(一)_爬虫原理和数据抓取

    本篇将开始介绍Python原理,更多内容请参考:Python学习指南 为什么要做爬虫 著名的革命家.思想家.政治家.战略家.社会改革的主要领导人物马云曾经在2015年提到由IT转到DT,何谓DT,DT ...

  6. python 数据挖掘 网页_使用Selenium和Python进行网页搜刮!

    使用Selenium和Python进行网页搜刮! 机器学习助长了当今的技术奇迹,例如无人驾驶汽车,太空飞行,图像和语音识别.但是,一位数据科学专业人员将需要大量数据来构建针对此类业务问题的健壮且可靠的 ...

  7. cookie追加数据_集算器 SPL 抓取网页数据

    [摘要] 集算器 SPL 支持抓取网页数据,根据抓取定义规则,可将网页数据下载到在本地进行统计分析.具体定义规则要求.使用详细情况,请前往乾学院:集算器 SPL 抓取网页数据! 网站上的数据源是我们进 ...

  8. python爬虫电影资源_【Python爬虫】第十六次 xpath整站抓取阳光电影网电影资源

    [Python爬虫]第十六次 xpath整站抓取阳光电影网电影资源# 一.解析电影url # 请求15题构造出的每个电影菜单的分页url,解析出每个电影url # 二.xpath解析电影资源 # 对第 ...

  9. python中nlp的库_用于nlp的python中的网站数据清理

    python中nlp的库 The most important step of any data-driven project is obtaining quality data. Without t ...

最新文章

  1. perl5 第九章 关联数组/哈希表
  2. mysql逻辑删除的区别_不能和逻辑删除一起配置,不然报错。
  3. SSM框架之MyBatis3专题5:MyBatis注解式开发
  4. Linux 创建桌面应用程序图标 (Ubuntu 18.04 16.04、Linux Mint、Deepin、等均适用 )
  5. 微信公众号无限群发消息 v5.7.1 多功能版全开源 + 配置教程
  6. Linux: Nginx 安装
  7. 蓝宝石会升级bios吗_别再听别人忽悠!升级BIOS的三大误区
  8. chrome应用程序无法启动因为并行配置不正确_Win8打不开软件提示并行配置不正确的解决方法...
  9. glMatrixMode()函数
  10. android 手机邮件发不出去,Android中小弟我为什么发不了邮件-Android邮件发送详解...
  11. Android完美适配dimens.xml脚本
  12. 调整单元格宽度无法生效的问题
  13. android 测试获取context,Android单元测试获取context问题,用AndroidTestCase获取为空
  14. 南航理论计算机科学答案,专业认证理念下的计算机专业本科生培养管理模式研究——以南航计算机科学与技术专业为例...
  15. c语言ODBC连接数据库
  16. 1.1 数列极限与函数极限
  17. 多少年没进csdn了,进来感叹一下时光荏苒,岁月不饶人。
  18. 华氏度与摄氏度对照表
  19. 年收入过10亿美元,Veeam看好云数据管理
  20. 如何在html添加css样式表,网页中添加CSS样式表的四种方式

热门文章

  1. JAVA8 Stream方法使用详解reduce、IntStream(二)
  2. HBase存储相关概念
  3. Spark常用RDD算子 - saveAsTextFile、saveAsObjectFile 可保存到本地文件或hdfs系统中
  4. maven-assembly-plugin 和 maven-shade-plugin打包插件的区别
  5. k8s kubectl run命令使用详解
  6. spark standalone集群安装及spark on yarn
  7. 计算机位运算:左移乘以2,右移除以2
  8. Feign的日志级别设置(显示feign调用服务过程中的日志信息)
  9. markword用于标记锁的位数
  10. 【客户下单】基于CRM完全匹配地址库实现自动分单