简单的爬行--静态网页爬虫+下一篇实例

2023-12-02 21:32

本文主要是介绍简单的爬行--静态网页爬虫+下一篇实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

















1、有些网页需要用户登录才能访问,需要添加cookie的处理

2、有些网页需要代理才能访问

3、有些网页是使用HTTPS加密访问的

4、有些网页的URL存在相互自动的跳转关系




<span style="font-size:18px;">#coding=utf-8
import urllib2url='https://www.baidu.com/'
print '第一种方法'
response1=urllib2.urlopen(url)
print response1.getcode()#打印code看是否读取成功
print len(response1.read())#打印下载网页的长度print '第二种方法'
request=urllib2.Request(url)
request.add_header("user-agent","Mozilla/5.0")#把URL伪装成了一个浏览器
response2=urllib2.urlopen(request)
print response2.getcode()#打印code看是否读取成功
print len(response2.read())#打印下载网页的长度print '第三种方法'
cj=cookielib.CookieJar()#创建一个cookie的容器
opener=urllib2.build_opener(urllib2.HTTPCookiePrecessor(cj))
urllib2.install_opener(opener)#给urllib2增加opener功能
response3=urllib2.urlopen(url)
print response3.getcode()#打印code看是否读取成功
print cj
print response3.read()#打印下载网页</span>



















<span style="font-size:18px;">#coding=utf-8html_doc = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title"><b>The Dormouse's story</b></p><p class="story">Once upon a time there were three little sisters; and their names were
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
and they lived at the bottom of a well.</p><p class="story">...</p>
"""from BeautifulSoup import BeautifulSoup
soup=BeautifulSoup(html_doc,'html.parser',from_encoding='utf-8')print '获取所有的链接'
links =soup.find_all('a')
for link in links:print link.name,link['href'],link.get_text()print '获取lacie的链接'
link_node=soup.find('a',href='http://example.com/lacie')
print link_node.name,link_node['href'],link_node.get_text()print '正则匹配'
link_node=soup.find('a',href=re.compile (r'ill'))
print link_node.name,link_node['href'],link_node.get_text()print '获取P段落文字'
p_node=soup.find('p',class_="title")
print p_node.name,link_node.get_text()</span>


【没运行出来,不知道问题在哪】





这篇关于简单的爬行--静态网页爬虫+下一篇实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/446912

相关文章

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

MySQL数据库的内嵌函数和联合查询实例代码

《MySQL数据库的内嵌函数和联合查询实例代码》联合查询是一种将多个查询结果组合在一起的方法,通常使用UNION、UNIONALL、INTERSECT和EXCEPT关键字,下面:本文主要介绍MyS... 目录一.数据库的内嵌函数1.1聚合函数COUNT([DISTINCT] expr)SUM([DISTIN

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

java String.join()方法实例详解

《javaString.join()方法实例详解》String.join()是Java提供的一个实用方法,用于将多个字符串按照指定的分隔符连接成一个字符串,这一方法是Java8中引入的,极大地简化了... 目录bVARxMJava String.join() 方法详解1. 方法定义2. 基本用法2.1 拼接

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创