文档章节

python网络爬虫(一)

MrYx3en
 MrYx3en
发布于 2014/08/04 19:13
字数 344
阅读 19
收藏 0

分析韩寒博客文章列表特征;

<a href="http://blog.sina.com.cn/s/blog_4701280b0102egl0.html" target="_blank">地震思考录</a>

<a title=     &middot;&middot;&middot;&middot;&middot;  href=     &middot;&middot;&middot;&middot;

提取字符串里的网络链接地址;

url = str0[href : html + 5]

下载韩寒博客指定的内容到本地。

import urllib.request

#<a title="《论电影的七个元素》——关于我对电影的一些看法以及《后会无期》的一些消息" target="_blank" href="http://blog.sina.com.cn/s/blog_4701280b0102eo83.html">
#enconfig:utf-8

str0= '<a title="《论电影的七个元素》——关于我对电影的一些看法以及《后会无期》的一些消息" target="_blank" href="http://blog.sina.com.cn/s/blog_4701280b0102eo83.html">'
title = str0.find(r'<a title')
print(title)
href = str0.find(r'href=')
print(href)
html = str0.find(r'.html')
print(html)
url = str0[href + 6:html +5]   #列表切片
print(url)
content = urllib.request.urlopen(url).read()
#print(content)
filename = url[-26:]   #文件名称以url中  ‘blog_4701280b0102eo83.html’  的方式命名
print(filename)
open(filename,'wb').write(content)


遇到的问题:

open 访问任何形式文件 访问非文本格式文件(二进制文件)的时候   访问模式通常加 'b'(即 二进制模式:'rb'或者是'wb'),否则会抛出如下的  TypeError 异常:

open(filename,'w').write(content)    #错误格式  要加 'b'  即   'wb'

Traceback (most recent call last):
  File "C:\Users\Alen\Desktop\wangluopacchong.py", line 19, in <module>
    open(filename,'w').write(content)
TypeError: must be str, not bytes










© 著作权归作者所有

共有 人打赏支持
MrYx3en
粉丝 9
博文 132
码字总数 30598
作品 0
宝鸡
系统管理员
5个python爬虫教材,让小白也有爬虫可写,含视频教程!

认识爬虫   网络爬虫,如果互联网是一张蜘蛛网,网络爬虫既是一个在此网上爬行的蜘蛛,爬了多少路程即获取到多少数据。 python写爬虫的优势   其实以上功能很多语言和工具都能做,但是用...

柯西带你学编程
06/12
0
0
高手问答第 202 期 —— 想要玩转 Python?不妨从 Python 网络爬虫开始

OSCHINA 本期高手问答(2018 年 6 月 20 日 — 6 月 26 日)我们邀请到了黄永祥@XyHJw 和大家一起讨论关于 Python 爬虫的问题。 黄永祥,信息管理与信息系统专业学士,曾从事过系统开发和自动化...

局长
06/19
0
0
Python未来有哪几个最具有潜力发展方向?

近些年来,Python语言的热度越来越高,因为Python简单,学起来快,是不少新手程序员入门的首选语言。 Python是一门脚本语言,因为Python编程语言能将其他各种编程语言写的模块粘接在一起,所...

Python燕大侠
06/29
0
0
涨!涨!涨!2018年Python 工程师薪资再次刷出新高度

闻名的TIOBE排行榜刚刚发布最新的2018年2月编程言语排名榜。TIOBE编程社区索引是编程言语评价的一个指标,该指数每月更新一次。小伙伴们赶忙看看下面的排名情况吧! TIOBE编程社区指数是流行...

python进阶者
03/01
0
0
月薪20K的Python程序员2018年Python学习进阶书籍推荐

用了python,与太阳肩并肩,本文与大家分享一些Python编程语言的入门书籍,其中不乏经典。以下书籍已经经中心多位编辑老师进行详细阅读后才整理出来供大家学习!推荐下大数据技术学习群:8050...

加米谷
07/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 到底谁是小公猫……

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:分享Trivium的单曲《Throes Of Perdition》 《Throes Of Perdition》- Trivium 手机党少年们想听歌,请使劲儿戳(这里) @小鱼丁:...

小小编辑
12分钟前
4
0
基础选择器

注意:本教程参考自网上流传的李兴华老师的jquery开发框架视频,但是苦于没有相应的配套笔记,由我本人做了相应的整理. 本次学习的内容 学习jquery提供的各种选择器的使用,掌握了jquery选择...

江戸川
18分钟前
0
0
Spring中static变量不能@value注入的原因

今天本想使用@Value的方式使类中的变量获得yml文件中的配置值,然而一直失败,获得的一直为null。 类似于这样写的。 public class RedisShardedPool { private static ShardedJedisPool pool...

钟然千落
今天
2
0
CentOS7防火墙firewalld操作

firewalld Linux上新用的防火墙软件,跟iptables差不多的工具。 firewall-cmd 是 firewalld 的字符界面管理工具,firewalld是CentOS7的一大特性,最大的好处有两个:支持动态更新,不用重启服...

dingdayu
今天
1
0
关于组件化的最初步

一个工程可能会有多个版本,有国际版、国内版、还有针对各种不同的渠道化的打包版本、这个属于我们日常经常见到的打包差异化版本需求。 而对于工程的开发,比如以前的公司,分成了有三大块业...

DannyCoder
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部