爬虫入门二:用html文件保存爬取到的数据

爬虫入门二(续一)

文末附教程博客链接,感兴趣可以去看一下。

用html文件保存爬取到的数据

python代码:
import requests
from bs4 import BeautifulSoup
#1-1.获取网页信息保存到文件的过程
#url = "https://movie.douban.com/cinema/later/chengdu/"
#response = requests.get(url)
#file_obj = open('douban.html','w',encoding="utf-8")
#file_obj.write(response.content.decode('utf-8'))
#file_obj.close()
#1-2.从文件获取信息的过程
#file_obj = open('douban.html','r', encoding="utf-8")
#html = file_obj.read()
#file_obj.close()
#1-3.初始化BeautifulSoup,解析网页
#soup = BeautifulSoup(html, 'lxml')
#print(soup.find)
#2.直接抓取、解析
url = "https://movie.douban.com/cinema/later/chengdu/"
response = requests.get(url)
soup = BeautifulSoup(response.content.decode('utf-8'), 'lxml')
#3.获取并分析元素
all_movies = soup.find('div', id = "showing-soon")
#4.展示有用信息
for each_movie in all_movies.find_all('div', class_ = "item"):
    #print(each_movie)
    all_a_tag = each_movie.find_all('a')
    all_li_tag = each_movie.find_all('li')
    movie_name = all_a_tag[1].text
    movie_href = all_a_tag[1]['href']
    movie_date = all_li_tag[0].text
    movie_type = all_li_tag[1].text
    movie_area = all_li_tag[2].text
    movie_lovers = all_li_tag[3].text
    print('电影名:{},电影链接:{},放映日期:{},电影类型:{},上映地区:{},想看的人数:{}'.format(
        movie_name,movie_href,movie_date,movie_type,movie_area,movie_lovers))
#5.将获取的有用信息保存到一个html文件
#python里面三个"围起来的字符会被看做是一整个字符串,避免了换行符的麻烦。
#.format()这个方法的用法是把字符串里面的{}字符,按次序一一替换成 format() 接受的所有参数。
file_obj = open('data.html', 'w', encoding="utf-8")
file_obj.write("""



    
    豆瓣电影即将上映影片信息
    


豆瓣电影即将上映影片信息

""")for each_movie in all_movies.find_all('div', class_ ="item"):#print(each_movie) all_a_tag = each_movie.find_all('a') all_li_tag = each_movie.find_all('li') movie_name = all_a_tag[1].text movie_href = all_a_tag[1]['href'] movie_date = all_li_tag[0].text movie_type = all_li_tag[1].text movie_area = all_li_tag[2].text movie_lovers = all_li_tag[3].text #print('电影名:{},电影链接:{},放映日期:{},电影类型:{},上映地区:{},想看的人数:{}'.format(# movie_name,movie_href,movie_date,movie_type,movie_area,movie_lovers)) file_obj.write(""" """.format(movie_href, movie_name, movie_date, movie_type, movie_area, movie_lovers)) file_obj.write("""
电影名 放映日期 电影类型 上映地区 关注者数量
{} {} {} {} {}
"""
) file_obj.close() print("finshed")
效果展示:

爬虫入门二:用html文件保存爬取到的数据_第1张图片

附上学习链接:
爬虫入门教程⑨— 用html和csv文件保存爬取到的数据.

你可能感兴趣的:(知识扩展)