网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。爬虫实在是计算机从业者的福音,它大大的缩减了我们的工作量。今天,我们就来尝试一下网页的爬取。

  首先,我们需要安装两个基本的库,requests和beautifulsoup4。

  requests:requests是Python中一个第三方库,基于 urllib,采用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 更加方便,可以节约我们大量的工作,完全满足 HTTP 测试需求。

  beautifulsoup4:Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖析树(parse tree)。 它提供简单又常用的导航(navigating),搜索以及修改剖析树的操作。它可以大大节省你的编程时间。

  我们安装这两个库的最简单的方法当然是通过pip指令。首先打开控制台,输入cmd,然后输入指令:

pip install requests/beautifulsoup4

即可自动安装。(关于pip的基本用法请见上一篇博客:https://www.cnblogs.com/Chen-K/p/11785161.html

  接下来,我们尝试着爬取一个网页的代码:

import requests
r=requests.get("https://httpbin.org")
print(type(r))
print(r.status_code)
print(r.encoding)
print(r.text)
print(r.cookies)

  那么,当我们只想爬取网页上的某一个标签时,又该如何操作呢?

import requests
from bs4 import BeautifulSoup
r=requests.get("https://www.baidu.com")
r.encoding='utf-8'
result=r.text
# print(result)
soup=BeautifulSoup(result,'html.parser')
name=soup.find_all('head')
for i in name:
print(i.text)

最新文章

  1. please wait while windows configures microsoft visual studio professional 2013 [转载]
  2. NOSDK--一键打包的实现(三)
  3. 无法远程到2008R2的解决方法
  4. OOD沉思录 --- 类和对象的关系 --- 包含关系2
  5. Java 编程的动态性,第 6 部分: 利用 Javassist 进行面向方面的更改--转载
  6. 关于var(string)++的类型自动转换
  7. require和include的区别及自动加载的定义
  8. [译]ASP.NET Core 2.0 布局页面
  9. 轻量级原生 ajax 函数,支持 get/array post/array post/json
  10. 关于浏览器对html, js,css的解析先后顺序的理解
  11. 自学Aruba4.1-Aruba开机初始化
  12. SpringBoot + Security实现权限控制
  13. JavaScript各种继承方式(三):组合继承(combination inheritance)
  14. There is no Action mapped for namespace / and action name . - [unknown location]
  15. CTF之LSB信息隐藏术
  16. CSV 文件
  17. Beta阶段——Scrum 冲刺博客第五天
  18. Skyline桌面二次开发之路径漫游(C#)
  19. 十三、curator recipes之SharedCounter
  20. dropout 为何会有正则化作用

热门文章

  1. Maltego更新到4.2.6
  2. Spark获取DataFrame中列的几种姿势--col,$,column,apply
  3. 深入学习c++--智能指针(二) weak_ptr(打破shared_ptr循环引用)
  4. Cheng MeiChun团队的技术支持
  5. 看烦了VS2012的黑白调调了吗?换
  6. 内层元素设置position:relative后父元素overflow:hidden overflow:scroll失效 解决方法
  7. ecshop中常用的sql语句
  8. jQuery (js 和 jQuery 的区别)
  9. Deepin 15.11 install nvidia dirver[mei you an zhuang shu ru fa]
  10. Kylin系列(一)—— 入门