前端基础:HTML、CSS与JS培训详解

需积分: 0 3 下载量 146 浏览量 更新于2024-07-27 收藏 3.44MB PDF 举报
前端基础培训课程涵盖了HTML、CSS和JavaScript这三大核心技术,是前端开发人员入门的重要阶段。该课程由舒克,一位来自淘宝旅行的前端工程师,以“葫芦居士”的身份主讲,旨在提供一个全面且深入的理解,而非速成式的教学。课程在2012年4月9日进行,强调了这三个技术在现代网页开发中的核心地位。 HTML(超文本标记语言)是页面结构的基础,它是构建网页内容和组织页面结构的语言。学习者会了解到HTML的基本构成,如文档类型声明(doctype,如HTML4.0和XHTML1.1),以及元素(element)和属性(attribute)的概念。例如,<!DOCTYPE html PUBLIC>声明用于指定文档类型,而元素如`<html>`、`<head>`、`<body>`等则是构建页面结构的关键。 CSS(层叠样式表)则主要负责页面的外观和样式,包括字体、颜色、布局等方面。它与HTML一起工作,通过选择器和属性来控制网页的呈现样式。课程强调了样式的重要性,表明仅仅依赖工具而不理解底层原理的时代已经过去,开发者需要掌握如何运用CSS来实现丰富的视觉效果和用户体验。 JavaScript(JS)作为客户端脚本语言,是实现网页交互和动态功能的核心。它不仅可以改变元素的样式,还可以操纵网页内容,创建动画和响应用户操作。课程内容涵盖了JavaScript的各个方面,如基础语法、DOM操作、事件处理、函数和对象等,同时提及了动画和交互设计的应用。 在整个课程中,HTML、CSS和JS的结合使得网页不仅有内容和结构,还能具备动态表现力和交互性,这对于现代前端开发来说至关重要。通过这个培训,学员将建立起扎实的前端基础,为后续进阶开发打下坚实的基础。
2023-06-13 上传

import requests import random import parsel visited_urls = set() # 保存已经访问过的链接 page = 1 while True: # 循环爬取 url = f'https://travel.qunar.com/travelbook/list.htm?page={page}&order=hot_heat' html_data = requests.get(url).text selector = parsel.Selector(html_data) lis = selector.css('.list_item h2 a::attr(href)').getall() # 遍历当前页面中的所有链接 for li in lis: detail_url = 'https://travel.qunar.com' + li if detail_url in visited_urls: # 如果链接已经访问过,则跳过 continue visited_urls.add(detail_url) # 将链接加入集合中 detail_html = requests.get(detail_url).text time.sleep(random.randint(3, 5)) detail_selector = parsel.Selector(detail_html) title = detail_selector.css('.b_crumb_cont *:nth-child(3)::text').get() comment = detail_selector.css('.title.white::text').get() view_count = detail_selector.css('.view_count::text').get() date = detail_selector.css('#js_mainleft > div.b_foreword > ul > li.f_item.when > p > span.data::text').get() days = detail_selector.css('#js_mainleft > div.b_foreword > ul > li.f_item.howlong > p > span.data::text').get() money = detail_selector.css('#js_mainleft > div.b_foreword > ul > li.f_item.howmuch > p > span.data::text').get() character = detail_selector.css('#js_mainleft > div.b_foreword > ul > li.f_item.who > p > span.data::text').get() play_list = detail_selector.css('#js_mainleft > div.b_foreword > ul > li.f_item.how > p > span.data > span::text').getall() for play in play_list: print(play) print(title, comment, view_count, date, days, money, character, play_list, detail_url) time.sleep(random.randint(3, 5)) # 判断是否需要继续爬取 if len(lis) == 0 or page >= 20: break page += 1这段代码怎么将爬取出来的所有数据保存到csv文件

2023-06-13 上传