Python 爬取单个网页所需要加载的地址和CSS、JS文件地址
来源:互联网 发布:流水别墅尺寸数据 编辑:程序博客网 时间:2024/05/26 19:17
Python 爬取单个网页所需要加载的URL地址和CSS、JS文件地址
通过学习Python爬虫,知道根据正式表达式匹配查找到所需要的内容(标题、图片、文章等等)。而我从测试的角度去使用Python爬虫,希望爬取到访问该网页所需要的CSS、JS、URL,然后去请求这些地址,根据响应的状态码判断是否都可以成功访问。
代码
'''Created on 2017-08-02 @author: Lebb '''import sysimport urllib2import rereload(sys)sys.setdefaultencoding('utf-8')url = "https://www.szrtc.cn/"http = "http"request = urllib2.Request(url,headers=Headers)responsecode = Noneerrorcount = 0itemurl = urldef getResponse(): try: response = urllib2.urlopen(request) except urllib2.HTTPError,he: print he.code except urllib2.URLError,ue: print ue.reason else : return response.read().decode('utf-8')def getUrl(): html = getResponse() patterncss ='<link href="(.*?)"' patternjs = '<script src="(.*?)"' patternimg = '<img src="(.*?)"' patternpage = '<a.*?href="(.*?)"' patternonclick = "openQuestion.*?'(.*?)'" href = re.compile(patterncss, re.S).findall(html) href += re.compile(patternimg, re.S).findall(html) href += re.compile(patternpage, re.S).findall(html) href += re.compile(patternjs, re.S).findall(html) href += re.compile(patternonclick, re.S).findall(html)return hrefdef reasonCode(): global errorcount itemurl = getUrl() for item1 in itemurl: if http in item1: sendurl = item1 else: sendurl = url + item1 try: print sendurl responseurl = urllib2.urlopen(sendurl,timeout=8) except urllib2.HTTPError,he: responsecode = he.code errorcount += 1 except urllib2.URLError,ue: responsecode = ue.reason errorcount += 1 else: responsecode = responseurl.getcode() if(responsecode != 200): errorcount += 1 print responsecode #return responsecode print errorcount
运行的结果:
错误截图:
实际上这条请求复制到浏览器是可以访问的,但是Python 的urllib2访问时,因为请求带中文参数,没有进行编码转换,导致报400错误。
尝试在代码中加入utf-8,还是没有效果,仍然报错。
这个问题先记下来,后面去找到其他解决办法
阅读全文
0 0
- Python 爬取单个网页所需要加载的地址和CSS、JS文件地址
- 原生js如何获取当前所加载网页的文件路径和名称
- 网页中的动态加载(js文件和css文件即换肤)
- 爬虫实例:爬取一个网页上的图片地址
- jsp中js,css文件相对地址的引用
- Python matplotlib安装及所需要的 numpy dateutil pyparsing six的下载地址
- webview加载网页地址
- 用JS正则表达式取网页中图片地址
- python爬取百度新闻所有的新闻的前1页 标题和URL地址
- python 把爬取页面的所有地址和访问结果存入数据库
- js獲取地址欄具體下標的值
- CSS和JS链接地址中带的问号
- 利用Python爬取YouTube上的视频播放地址
- python项目之 爬取代理的ip地址
- javascript取网页地址参数
- 简单直接的爬虫,得到所需要的链接地址
- &引用和&取地址
- 运行地址和加载地址
- python笔记 --pydot安装与绘制决策树
- 数据分页
- Spring官网下载的步骤
- C# 如何读取设备信息
- Science14年的聚类论文——Clustering by fast search and find of density peaks
- Python 爬取单个网页所需要加载的地址和CSS、JS文件地址
- 调用函数
- Ubuntu 14.04 (降级)安装 SVN 1.7
- F
- Kanade's sum HDU 6058
- UnsupervisedMonocular Depth Estimation with Left-Right Consistency
- 下载可以观看但没有下载链接的视频或者音乐
- Android 广播系统
- Java源码阅读-StringBuffer和StringBuilder