会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 133943个问题
JAVA 全系列/第六阶段:项目管理与SSM框架/SpringMVC 22726楼
JAVA 全系列/第六阶段:项目管理与SSM框架/Mybatis 22727楼

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>小米商城</title>
    <link rel="icon" href="image/icon.png">
    <link rel="stylesheet" href="css/test.css">
    <link rel="stylesheet" href="css/index.css">
</head>
<body>
    <!-- 头部的开始 -->
    <div class="header">
        <a href="#">
            <img src="image/a2a9e6db5e3c5374301827435d8595c6.jpg" alt="">
        </a>
    </div>
    <!-- 头部的结束 -->
    <!-- 导航开始 -->
    <div class="headerNav">
         <!-- 水平居中DIV -->
        <div class="nav">           
            <lu class="nav_ul_left">
                <li><a href="" herf="#">小米商城</a> <span>|</span></li>
                <li><a href="" herf="#">MIUI</a> <span>|</span></li>
                <li><a href="" herf="#">loT</a> <span>|</span></li>
                <li><a href="" herf="#">云服务</a> <span>|</span></li>
                <li><a href="" herf="#">天星数科</a> <span>|</span></li>
                <li><a href="" herf="#">有品</a> <span>|</span></li>
                <li><a href="" herf="#">小爱开放平台</a> <span>|</span></li>
                <li><a href="" herf="#">企业团购</a> <span>|</span></li>
                <li><a href="" herf="#">资质证照</a> <span>|</span></li>
                <li><a href="" herf="#">协议规则</a> <span>|</span></li>
                <li><a href="" herf="#">下载app</a> <span>|</span></li>
                <li><a href="" herf="#">智能生活</a> <span>|</span></li>
                <li><a href="" herf="#">Select Location</a></li>
            </lu>
            <ul class="nav_ul_right">
                <li><a href="" herf="#">登录</a><span>|</span></li>
                <li><a href="" herf="#">注册</a><span>|</span></li>
                <li><a href="" herf="#">消息通知</a></li>
                <li class="cart">
                    <a href="" herf="#">购物车(0)</a>
                    <div class="cart_list">购物车中还没有商品,赶紧选购吧!</div>
                </li>
            </ul>
        </div>
    </div>
    <!-- 导航结束 -->
</body>
</html>
/* 头部css开始 */
.header{
    width: 100%;
    height: 100px;
    /* background-color: red; */
    overflow: hidden;
    /* 父元素定位 */
    position: relative;
}
.header img{    
    height: 100px;
    /* 子元素定位 */
    position: absolute;
    /* 子元素左边距离父元素50% */
    left: 50%;
    /* 子元素向左移50% 这样图片就跟父元素水平居中了*/
    transform: translateX(-50%);
}
/* 头部css结束 */

/* 导航样式开始 */
.headerNav{
    width: 100%;
    height: 40px;
    background-color: #333; 
    line-height: 40px;
    font-size: 12px;
    color: #b0b0b0;
}
/* 水平居中DIV  */
.nav{
    width: 1226px;      
    margin:0 auto;   
}
.nav_ul_left{
    float: left;
}
.nav_ul_right{
    float: right;
}
.nav li{
    float: left;
}
.nav a{
    color: #b0b0b0;
}
.nav span{
    color: #424242;
    margin: 0.3em;
}
/* 导航上所有a标签 */
.nav a:hover{
    color: #fff;
}
/* 购物车 */
.cart{
    width: 120px;
    height: 40px;
    background-color: #424242;
    margin-left: 25px;
    position: relative;
}
/* 购物车背景 */
.cart:hover{
    background-color: #fff;
    /* 鼠标移动到li变成小手 */
    cursor: pointer;    
}
/* 购物车字体 */
.cart:hover>a{   
    color: #ff6700;
    font-weight: 500;
}
/* 购物车下拉内容 */
.cart_list{
    width: 316px;
    height: 0;    
    background-color: #fff;
    color: #424242;
    position: absolute;
    right: 0;
    top: 40px;
    display: none;
    overflow: hidden;
    /* 动画过渡 */
    transition: all 0.3s;
    /* 设置边框 */
    box-shadow: 0 2px 10px rgb(0 0 0 / 15%);
}
.cart:hover>.cart_list{
    height: 100px;
    line-height: 100px;
    display: block;  
    
}
/* 导航样式结束 */

在购物车下拉内容里面动画过渡那里设备了过渡效果没起作用。

WEB前端全系列/第一阶段:HTML5+CSS3模块/CSS3新特性 22728楼
Python 全系列/第八阶段:轻量级Web开发利器-Flask框架/Flask高级 22732楼
Python 全系列/第一阶段:AI驱动的Python编程/控制语句 22733楼
Python 全系列/第六阶段:数据库与AI协同技术实战/mysql介绍与环境安装 22734楼
JAVA 全系列/第五阶段:网页编程和设计/Javascript 语言(旧) 22736楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器 22738楼

from fake_useragent import UserAgent
import requests
from lxml import etree
from time import sleep


def get_html(url):
    '''
    :param url: 要爬取的地址
    :return: 返回html
    '''
    headers = {"User-Agent": UserAgent().chrome}
    resp = requests.get(url, headers=headers)
    sleep(2)                        #控制访问速度,以免给对方服务器造成负担,每次访问之前,睡上2秒
    if resp.status_code == 200:     #状态码==200即可返回
        resp.encoding = 'utf-8'
        return resp.text            #返回内容
    else:
        return None


def parse_list(html):
    '''
    :param html: 传递进来一个有电影列表的html
    :return: 返回一个电影列表的url
    '''

    e = etree.HTML(html)      #创建一个对象
    list_url = ['http://maoyan.com{}'.format(url) for url in e.xpath('/div[@class="channel-detail movie-item-title"]/a/@href')]
    return list_url


def pares_index(html):
    '''
    :param html: 传递进来一个有电影信息的html
    :return: 已经提取好的电影信息
    '''
    e = etree.HTML(html)
    name = e.xpath('//h1[@class="name"]/text()')[0]
    type = e.xpath('//li[@class="ellipsis"]/a[1]/text()')[0]
    actors = e.xpath('//div[@class="celebrity-group"][2]/ul[@class="celebrity-list clearfix"]/li/div/a/text()')
    actors = format_data(actors)
    return {"name": name, "type": type, "actors": actors}


def format_data(actors):                  #去重演员信息
    actor_set = set()
    for actor in actors:
        actor_set.add(actor.strip())      #strip()--去空格
    return actor_set


def main():
    num = int(input('请输要获取多少页:'))
    for page in range(num):
        url = 'https://maoyan.com/films?offset={}'.format(page * 30)

        list_html = get_html(url)
        list_url = parse_list(list_html)
        for url in list_url:
            info_html = get_html(url)       #发送新的请求获取电影信息
            movie = pares_index(info_html)  #解析电影信息
            print(movie)


if __name__ == '__main__':
    main()

老师,按照网站的最新链接修改xpath等各链接之后,只运行到页数,就结束了,到process finished with exit code 0,这是什么原因?

Python 全系列/第十六阶段:Python 爬虫开发/爬虫反反爬- 22739楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637