真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

生生生-爬蟲02-創(chuàng)新互聯(lián)

1. xpath

xpath是在XML文檔中搜素內(nèi)容的一種語言。html是xml的一個子集。使用xpath需要安裝lxml模塊。

創(chuàng)新互聯(lián)建站服務項目包括舒城網(wǎng)站建設、舒城網(wǎng)站制作、舒城網(wǎng)頁制作以及舒城網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,舒城網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到舒城省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!

1.1 練習1

from lxml import etree

xml = """1野花貶低想1.23臭豆腐周大強周芷若周杰倫蔡依林
 惹人
        
 再見   胖胖陳胖胖不陳"""

tree = etree.XML(xml) # XML()用來讀取xml文件
# res = tree.xpath("/book/name") # /表示層級關系,第一個/代表根節(jié)點。
# res = tree.xpath("/book/name/text()") # text()代表拿文本
# res = tree.xpath("/book/author//nick/text()") # //表示后代
# res = tree.xpath("/book/author/*/nick/text()") # *表示任意的節(jié)點,通配符。只提取想要的部分
res = tree.xpath("/book//nick/text()") #拿book下所有的nick中的內(nèi)容
print(res)

1.2 練習2?

(1)b.html文件

Title
  • 百度
  • 谷歌
  • 搜狗
  1. 飛機
  2. 大炮
  3. 火車
大冒險 大米

(2)使用

from lxml import etree

tree = etree.parse("b.html") # parse()用來讀取文件

# 1.取a標簽下的所有內(nèi)容
res1 = tree.xpath("/html/body/ul/li/a/text()")


# 2.取a標簽下的第一個,xpath順序從1開始數(shù)
res2 = tree.xpath("/html/body/ul/li[1]/a/text()")


# 3.取a標簽下href值為“dapao”的內(nèi)容。[@XX=XX]代表屬性的篩選
res3 = tree.xpath("/html/body/ol/li/a[@href='dapao']/text()")


# 4.遍歷li標簽下的所有內(nèi)容
ol_li_list = tree.xpath("/html/body/ol/li")
for li in ol_li_list:
    # 從每個li中提取到文字信息
    res4_1 = li.xpath("./a/text()") # 此時的li不是根節(jié)點了,而是在li中繼續(xù)去存在。此時需要利用./
    print(res4_1)
    # 查找a標簽里面的href的值。利用@屬性
    res4_2 = li.xpath("./a/@href")
    print(res4_2)


# 5.拿到ul/li/a標簽下所有的href值
res5 = tree.xpath("/html/body/ul/li/a/@href")
3. 練習:抓取豬八戒網(wǎng)信息

在該網(wǎng)站中,爬取紅色框中的內(nèi)容。代碼如下,

#!/usr/bin/python
# -*- coding: UTF-8 -*-

"""
  1.提取頁面源代碼
  2.提取和解析數(shù)據(jù)
"""
import io
import sys
from lxml import etree
import requests

sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='gb18030') # 改變標準輸出的默認編碼

url = "https://wuhan.zbj.com/search/service/?kw=saas"
resp = requests.get(url)
# resp.encoding = 'gbk'  # 指定字符集
# print(resp.text)

# 提取和解析數(shù)據(jù)
html = etree.HTML(resp.text) # HTML()用來加載網(wǎng)頁源碼

#拿到每一個服務商的div
fin_list = []
divs = html.xpath("http://*[@id='__layout']/div/div[2]/div/div[4]/div[4]/div[1]/div")
for div in divs:  #獲取每一個服務商的信息
    price = div.xpath("./div/div[2]/div[1]/span/text()")
    list = []
    if(len(price) != 0):  #提取到的某條數(shù)據(jù)可能為空,要進行判斷
        price = price[0].strip("¥") # 去掉開頭的¥
        list.append(price)

    # name = div.xpath("./div/div[2]/div[2]/a/text()") #此時會出現(xiàn)列表中有兩個元素的情況,要將他們進行拼接
    name = "saas".join(div.xpath("./div/div[2]/div[2]/a/text()"))
    if (len(name) != 0):
        list.append(name)

    place = div.xpath("./div/a/div[2]/div/div/text()")
    if (len(place) != 0):
        list.append(place[0])

    #將提取到的所有數(shù)據(jù)以列表的形式存放
    fin_list.append(list)  
print(fin_list)

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧


網(wǎng)頁標題:生生生-爬蟲02-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://weahome.cn/article/dcejdg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部