Python 课堂小作业top250

import urllib.request
 
 
def get_html_text(url):
    try:
        h = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) '
                           'AppleWebKit/537.36 (KHTML, like Gecko) '
                           'Chrome/68.0.3440.106 Safari/537.36'
             }
        r = requests.get(url, headers=h, timeout=3000)
        r.raise_for_status()   # 如果不是200,则引发HTTPError异常
        r.encoding = r.apparent_encoding  # 根据内容去确定编码格式
        return r.text
    except BaseException as e:
        print("出现异常:", e)
        return str(e)
 
 
#  将字符串写进文件中,参数分别是文件名和内容
def writefile(file_name, content_str):
    with open(file_name, "w", encoding='utf-8', ) as f:
        f.write(content_str)
        f.close
 
 
#  爬虫代码
import requests
import re
from bs4 import BeautifulSoup
print("开始爬虫")
url = "https://movie.douban.com/top250"
html_text = get_html_text(url)
#writefile("a.txt", html_text)
soup = BeautifulSoup(html_text,"html.parser")
nodes=soup.find_all("span",class_="title")
nodes2=soup.find_all("span",class_="rating_num")
nodes3 = soup.find_all("img")
for i in nodes:
    s = i.string
    if s[1]=='/':
        continue
    else:
        print(i.string)
 
for j in nodes2:
    print(j.string)
for k in nodes3:
    link = k["src"]
    name = k["alt"]
 
    print(name)
    print(link)
    urllib.request.urlretrieve(link,"C:/Users/416/Desktop/pics/%s.jpg" % name)
 
 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值