0基础 | BeautifulSoup进行页面内容提取

事情是这样的,本人本科跨专业考到某大学研究生,然后现在每天0基础做作业,每次百度出来的方法都不是对小白特别友好,因此想到在此处记录一下我的0基础作业。

今天做的是网络爬虫课的作业,使用BeautifulSoup对实际网页进行页面内容提取,由于我真的啥都还不会,所以我会从最简单的安装python配置环境做起。

第一步:安装python环境。在csdn输入“安装python”然后一步一步安装配置。

Python安装教程(新手)_Hi梅的博客-CSDN博客_python安装教程

 按照博主的方式,成功按照pyCharm,创建beautiful.py文件。

第二步:搜索“BeautifulSoup安装”。按照步骤安装BeautifulSoup,这个博主讲的好细致,感谢。

Python Beautiful Soup教程-简介及安装_一行书辞的博客-CSDN博客_beautifulsoup安装

pip3 install beautifulsoup4

我安装lxml失败了,所以安装了html5lib

pip3 install html5lib

安装requests模块,因为要发请求,模仿浏览器对网站进行访问。

python -m pip install requests

到此配置工作已经完成,开始写代码。

# 用bs4对豆瓣北京站电影进行爬取

import requests
from bs4 import BeautifulSoup

url = "https://movie.douban.com/cinema/nowplaying/beijing/"

# 获取页面信息
#加上请求头,模拟浏览器对网站进行访问
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'}
response = requests.get(url=url, headers=headers)
content = response.text
print(content)

# 分析页面,获取ID和电影名称
soup = BeautifulSoup(content, 'html.parser')

# 找到所有的电影信息对应的li标签,此时的movie_list是一个生成器
movie_list = soup.find_all('li', class_='list-item')

# 储存所有电影信息[{'title':'名称','id':'id号'}]
movies_info = []
# 用for循环依次遍历每一个li标签,提取所需要的信息
for item in movie_list:
    now_movies_dict = {}
    # 根据属性获取title和id内容
    # item['data-title']获取li标签里面的指定属性data-title对应的value值;
    now_movies_dict['title'] = item['data-title']
    now_movies_dict['id'] = item['id']
    now_movies_dict['actors'] = item['data-actors']
    now_movies_dict['director'] = item['data-director']
    # 将获取的{'title':"名称", "id":"id号"}添加到列表中;
    movies_info.append(now_movies_dict)

# 在目录里生成一个txt文件
with open('movies.txt', 'w', encoding='utf-8') as f:
    for item in movies_info:
        f.write(str(item) + '\n')

可以在文件夹里得到一个movie.txt文件。

结束,下班回家了。 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值