一、爬虫基本知识

URL(Uniform Resource Locator的缩写):也被称为网页地址,通俗讲就是文件在网络中的位置,URL就是web地址,俗称“网址”。
HTTP是一个客户端(用户)和服务器端(网站)之间进行请求和应答的标准
用户代理(user agent):指客户端

用爬虫获取“python之禅”的文本

import lxml.html,requests
ur1='http://www.python.org/dev/peps/pep-0020/'
xpath='//*[@id="the-zen-of-python"]/pre/text()'
res=requests.get(ur1)
ht=lxml.html.fromstring(res.text)
text=ht.xpath(xpath)
print('Hello,\n'+''.join(text))

运行结果:

以上时“Python之禅的内容”,上述程序完成了一个网络爬虫最普遍的流程:1、访问站点;2、定位所需信息;3、得到并处理信息。

代码解析

import lxml.html,requests

上述代码导入了两个模块,分别是lxml库中的html以及python中著名的Requests库。lxml是用于解析XML和HTML的工具。

ur1='http://www.python.org/dev/peps/pep-0020/'
xpath='//*[@id="the-zen-of-python"]/pre/text()'

上述代码定义了两个变量,ur1和xpath会自动被识别为字符串类型。ur1是一个网页链接,可以直接在浏览器中打开,页面中包含“Python之禅”的文本信息。xpath变量则是一个XPath路径表达式。lxml库可以使用XPath来定位元素。

res=requests.get(ur1)

上述使用了Requests中的get()方法,对ur1发送了一个HTTP GET请求,返回值被赋值给res,于是便得到了一个名为res的Response对象,接下来就可以从这个Response对象获取需要的信息。

ht=lxml.html.fromstring(res.text)

lxml.html是lxml下的一个模块,顾名思义,主要负责处理HTML。fromstring方法传入的参数是res.text,即Response对象的text(文本)内容。fromstring()方法的docstring(文档字符串,即此方法的说明)中提到,这个方法可以“Parse the html,returning a single element/document.”,即fromstring()根据这段文本来构建一个lxml中的HtmlElement对象。

text=ht.xpath(xpath)
print('Hello,\n'+''.join(text))

这两行代码使用XPath来定位HtmlElement中的信息,并进行输出。text就是程序运行得到的结果,.join()是一个字符串方法,用于将序列中的元素以指定的字符串连接生成一个新的字符串。因为text是一个list对象,所以使用‘ ’这个空字符来连接。如果不进行这个操作而直接输出则会报错。

python爬虫--第一个爬虫程序相关推荐

  1. 孤荷凌寒自学python第七十九天开始写Python的第一个爬虫9并使用pydocx模块将结果写入word文档...

    孤荷凌寒自学python第七十九天开始写Python的第一个爬虫9 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 到今天终于完成了对docx模块针对 ...

  2. python跟易语言的爬虫_新人Python,第一只爬虫,,我就只会re.findall,你咬我?

    [Python] 纯文本查看 复制代码import requests import re import os # 设置浏览器引擎 headers ={ 'User-Agent': 'Mozilla/5 ...

  3. python 爬虫《百炼成佛》爬虫入门 (爬虫介绍)第一个爬虫程序

    爬虫<百炼成佛> 爬虫是什么? 爬虫:通过编写程序来获取到互联网上的资源百度 爬虫:通过编写程序来获取到互联网上的资源百度 需求:用程序模拟浏览器.输入一个网址.从该网址中获取到资源或者内 ...

  4. 爬虫小白第一课、从安装python到写出第一个爬虫程序、Pycharm安装详解

    本文原文链接 ↑↑↑ 目录 1什么是python 2怎么安装python 3安装python编辑器 4"写"你的第一个爬虫 5小结 python爬虫现在挺火,一方面全民学pytho ...

  5. Python入门(安装)——第一个爬虫程序(爬取山东各城市天气信息)

    Python爬虫原来可以这么简单,前两天有个朋友让我帮她看一下爬取天气的一段程序有什么问题,这段程序是用Python写的,只是以前听说Python爬虫很厉害,但是不知道自己怎么会没有时间开始.刚好我也 ...

  6. python爬虫__第一个爬虫程序

    前言 机缘巧合,最近在学习机器学习实战, 本来要用python来做实验和开发环境 得到一个需求,要爬取大众点评中的一些商户信息, 于是开启了我的第一个爬虫的编写,里面有好多心酸,主要是第一次. 我的文 ...

  7. python:第一个简单爬虫程序

    爬虫的套路 爬虫就是模拟浏览器行为,将别人网站的内容,抓取下来,提取自己想要的内容. 第一步:分析爬取网站的url,请求的url需要哪些参数呀,要不要用户认证等. 第二步:模拟浏览器行为进行网络请求. ...

  8. @程序员,想要基于 Python 3.4 玩爬虫该看些什么?

    互联网包含了迄今为止最有用的数据集,并且大部分可以免费公开访问.但是,这些数据难以复用.它们被嵌入在网站的结构和样式当中,需要抽取出来才能使用.从网页中抽取数据的过程又称为网络爬虫,随着越来越多的信息 ...

  9. python爬虫从入门到实战笔记——第一章爬虫原理和数据爬取

    爬虫原理和数据抓取 1.1 通用爬虫和聚焦爬虫 通用爬虫 聚焦爬虫 1.2 HTTP和HTTPS HTTP的请求与响应 浏览器发送HTTP请求的过程: 客户端HTTP请求 请求方法 常用的请求报头 服 ...

最新文章

  1. 唉,面试官这 5 道题,难为我这 3 年经验了
  2. 建立实体-关系模型4
  3. 如果只推荐一本 Python 进阶的书,我要 Pick 它!
  4. 解决multiple definition of的方法
  5. 2pc oracle dba_2pc_pending,dba_2pc_pending视图中的信息不清除会对以后有影响吗?如何根本解决问题?...
  6. python100个必背知识-python编程面试中必考的知识点,数据类型全解,笔记超全面...
  7. CentOS6.3 x86_64 mininstall 安装 apahce2.23+jdk1.7+tomecat7+mysql5.1.58
  8. 小米手机安装证书(安卓)
  9. pandas 计算工具
  10. Ubuntu有了第一个全球CDN更新源
  11. 1015 德才论 (25 分)—PAT (Basic Level) Practice (中文)
  12. 我的世界seus光影java版下载_我的世界0.17SEUS PE光影材质包(水反高清)下载
  13. 基于Python操作Excel实战案例
  14. Linux_zlog日志系统的安装与使用
  15. 下载小红书无水印照片
  16. 印度互联网创业大热:会出现“下一个苹果”?
  17. java jfif,win10保存图片成了jfif格式怎么办?
  18. 大数据环境搭建 —— VMware Workstation 安装详细教程
  19. Qt 实现双滑块滑条 range slider
  20. 市场营销学3——市场营销环境

热门文章

  1. 2017 ACM Arabella Collegiate Programming Contest
  2. 电磁场与仿真软件(30)
  3. 修复iPhone X 开机卡白苹果导致无法开机的问题
  4. 【Ubuntu】更新系统时间
  5. linux版英特尔酷睿i7,英特尔酷睿i7 1165G7和AMD Ryzen 7 Pro 4750U Linux性能对比
  6. 鸿蒙系统如何进入语音助手,原来华为手机的语音助手还可以这么玩,九个实用技能分享给你...
  7. 深度分析:一次Wi-Fi入侵实录(1)
  8. Go语言学习笔记-数组、切片、map
  9. 神经网络性能评价指标
  10. Delphi变成小技巧——直接将excel当做表来显示