Python爬虫学习笔记一(安装包、urllib、BeautifulSoup)

一、在pycharm中引入包

1、从命令提示框安装

pycharm页面下方:terminal --> python --> pip+包名

 2、从setting安装(常用)

File --> Settings --> Project:douban(项目名称是什么这里就是什么) --> Python Interpreter --> "+"   --> Available Packages --> 搜索想要安装的包名 --> Install Package

二、爬取基础

爬取网页 --> 解析数据 --> 保存数据 

爬取的基础模块轮廓如下:

def main():
    baseurl = "https://movie.douban.com/top250?start="
    # 1.爬取网页
    datalist = getDate(baseurl)
    #3.保存数据
    savepath = ".//豆瓣电影Top250.xls"
    saveDate(savepath)


#1.爬取网页
def getDate(baseurl):
    datalist = []
    #2.逐一解析网页
    return datalist

#保存数据
def saveDate(savepath):
    print("save...")

二、urllib补充拓展(待补充)

import urllib.request

#获取一个get请求
# (将网页源码包装成一个对象返回到response中,打印该对象的内容,需要读取及解码)
# 解码内容放在一个HTML文件中,以浏览器方式打开可以得到获取的网页页面
response = urllib.request.urlopen("http://www.baidu.com")
print(response.read().decode('utf-8'))      #对获取到的网页源码进行utf-8解码

 三、BeautifulSoup

1、BeautifulSoup4将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种
from bs4 import BeautifulSoup

file = open("./baidu.html","rb")             #打开文件或链接
html = file.read()                      #读取内容
bs = BeautifulSoup(html,"html.parser")  #html解析

 ***BeautifulSoup不仅能解析HTML文件,还可以解析CSS等文件,第一个变量为需要解析的对象名,第二个变量为需要使用的解析器

(1)Tag

#1、Tag 标签极其内容:拿到它所找到的第一个内容
print(bs.title)
print("-"*30)
print(bs.a)
print("-"*30)
print(bs.head)

print("-"*30)
print(type(bs.head))

运行结果:

<title>百度一下,你就知道</title>
------------------------------
<a class="mnav" href="http://news.baidu.com"><!--新闻--></a>
------------------------------
<head>
<meta ;="" charset="utf-8" content="text/html" http-equiv="content-type"/>
<meta content="IE=Edge" http-equiv="X-UA-Compatible"/>
<meta content="always" name="referrer">
<link href="//ss1.bdstatic.com" rel="dns-prefetch"/>
<title>百度一下,你就知道</title>
</meta></head>
------------------------------
<class 'bs4.element.Tag'>

(2)N

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值