Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
篇文章給大家說了css的三種不同的引入方式,今天給大家說一下css的三種選擇器:標簽選擇器、類選擇器和ID選擇器。
那么有人就會問了,什么是選擇器?我們寫的css樣式聲明(定義)由兩部分組成,形式如下:選擇器{ 樣式;},在{}之前的部分就是“選擇器”,“選擇器”指明了{}中的“樣式”的作用對象,也就是“樣式”作用于網頁中的哪些元素。比如我們之前寫的span{ color:#f00; }中的span就為一個選擇器。
標簽選擇器其實就是我們經常說的html代碼中的標簽。例如html、span、p、div、a、img等等;比如我們想要設置網頁中的p標簽內一段文字的字體和顏色,那么css代碼就如下所示:
上面的css樣式代碼的作用:為p標簽內的文字設置顏色為紅色,字體的大小為16px;(具體的css樣式我們會在后邊講解,這里先了解下即可)
類選擇器在我們今后的css樣式編碼中是最常用到的,它是通過為元素設置單獨的class來賦予元素樣式效果。
使用語法:(我們這里為p標簽單獨設置一個類選擇器.content,代碼就如下所示)
詳細講解:
1、類選擇器都是使用英文圓點(.)開頭;
2、每個元素可以有多個類名,,名稱可以任意起名(但不要起中文,一般都是與內容相關的英文縮寫)
3、類選擇器只會改變類下的元素樣式,而不會改變其它標簽的默認樣式;
我們上邊的頁面在瀏覽器上顯示的效果就如下所示:(content下的文字內容顏色變成了紅色,字體變成了16px)
ID選擇器類似于類選擇符,作用同類選擇符相同,但也有一些重要的區別。
使用語法:
詳細講解:
1、ID選擇器為標簽設置id="ID名稱",而不是class="類名稱"。
2、ID選擇符的前面是符號為井號(#),而不是英文圓點(.)。
3、ID選擇器的名稱是唯一的,即相同名稱的id選擇器在一個頁面只能出現一次;
對于css的三種選擇器我們今天就先介紹到這里,大家在平時可以自己多加練習練習,多熟練下class的使用方式與技巧。
每日金句:你今天的努力,是幸運的伏筆,當下的付出,是明日的花開。喜歡我的文章的小伙伴記得關注一下哦,每天將為你更新最新知識。
言
在進行網站爬取時,能夠準確、高效地提取所需數據是至關重要的。CSS 選擇器提供了一種強大且靈活的方式,用于定位和提取網頁中的特定部分。本文將詳細介紹如何在網站爬取中使用 CSS 選擇器,以及如何使用它們來指定部分讀取網頁內容。
CSS 選擇器基礎
CSS 選擇器用于選擇 HTML 文檔中的元素以便應用樣式。在網頁爬取中,同樣的原理被用來定位和提取數據。
簡單選擇器:
元素選擇器:選擇所有特定類型的元素。例如,p 選擇所有 <p> 元素。
類選擇器:以點(.)開頭,選擇特定類的所有元素。例如,.class-name 選擇所有 class="class-name" 的元素。
ID 選擇器:以井號(#)開頭,選擇特定 ID 的元素。例如,#id 選擇 id="id" 的元素。
組合選擇器:
后代選擇器:用空格分隔,選擇特定元素內的另一個元素。例如,div p 選擇所有位于 <div> 元素內的 <p> 元素。
子選擇器:用大于號(>)分隔,選擇直接子元素。例如,ul > li 選擇所有直接位于 <ul> 內的 <li> 元素。
屬性選擇器:
選擇具有特定屬性或屬性值的元素。例如,a[href] 選擇所有帶有 href 屬性的 <a> 元素。
使用 Scrapy 和 CSS 選擇器
在 Scrapy 中,CSS 選擇器被廣泛用于提取數據。以下是一個示例,展示如何使用 Scrapy 和 CSS 選擇器進行網頁內容的指定部分讀?。?/p>
import scrapy
class MySpider(scrapy.Spider):
name = 'myspider'
start_urls = ['http://example.com']
def parse(self, response):
# 使用 CSS 選擇器提取數據
titles = response.css('h1::text').getall() # 提取所有 <h1> 標簽的文本
links = response.css('a::attr(href)').getall() # 提取所有鏈接
for title in titles:
print(title)
for link in links:
print(link)
在這個示例中,response.css() 方法用于應用 CSS 選擇器,::text 用于獲取元素的文本內容,::attr(href) 用于獲取元素的 href 屬性值。
CSS 選擇器的高級應用
CSS 選擇器也可以用于更復雜的選擇任務,如選擇特定類的最后一個元素、選擇具有特定屬性值的元素等。
偽類選擇器:
如 :last-child、:first-of-type 等偽類選擇器可以用于選擇特定的子元素。
屬性值選擇器:
如 [attribute^=value]、[attribute$=value]、[attribute*=value] 可以用于基于屬性值的模式匹配。
總結
CSS 選擇器是一種強大的工具,用于網頁內容的精確提取。通過熟練使用 CSS 選擇器,可以大大提高爬蟲的效率和準確性。在實際的爬蟲項目中,合理地使用 CSS 選擇器不僅可以節省時間,還可以使得代碼更加簡潔易懂。無論是簡單的數據提取還是復雜的網頁解析,CSS 選擇器都是爬蟲開發者的有力工具。
下來快速地學習一下選擇排序。
·首先,我們有一個無序數組,從數組的最低位開始,從第5個元素開始,在整個數組中找到最小的元素,即1和5。很明顯,1比5小,現在最小值是1。
·然后,我們將1和9進行比較,然后和8進行比較,然后和3進行比較,然后和6進行比較,然后和4進行比較,然后和7進行比較。第一輪已經確定了最小的元素是1,因此1和5進行交換,1所在的位置已經正確了。
·然后,我們從下標為1的5開始,開始第二輪找出最小的元素。在第二輪中,最小值是3,因此我們將3和5交換位置,3已經在正確的位置上了。
·然后,我們從下標為2的元素9開始,和后面所有的元素進行比較,找出最小的元素。很明顯,這里面最小的元素是4,因此我們將4和9交換位置。前面三個元素已經有序。
·然后,我們從下標為3的8開始,進行下一輪邊里找出最小的元素是5,因此我們將5和8交換位置。因此,選擇排序的核心是選擇一個最小的元素,并與當前元素進行交換。
·接下來,我們將8和后面所有的元素進行比較,找出最小的元素,即6和8交換。
·然后,我們從8開始和后面的9和7進行比較,找出最小的元素,即7和8交換。
·然后,我們從下標為6的9和后面的所有元素進行比較,找出最小的元素,即7和9交換。
·現在,第零個到第六個元素已經在正確的位置上,整個選擇排序結束。
一起來總結一下。選擇排序的基本思想是從數組中選擇最小的元素,并將其與當前元素進行交換,直到整個數組有序為止。在選擇排序中,我們需要不斷比較最小的元素,并將其與當前元素進行交換。選擇排序是一種簡單的排序算法,但其時間復雜度較高,因為它需要不斷比較和交換。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。