1. 程式人生 > >Python爬蟲 requests etree 模組

Python爬蟲 requests etree 模組

import  requests
from lxml import etree

url='https://movie.douban.com/subject/1293052/'
data=requests.get(url).text
#print(data)
s=etree.HTML(data)
#//*[@id="content"]/h1/span[1]
film=s.xpath('//*[@id="content"]/h1/span[1]/text()')

print(film)

//===================================================================


from lxml import etree    #解析模組
import requests           #請求模組
import time

for a in range(10):
    url = 'https://book.douban.com/top250?start={}'.format(a*25)   #URL 遍歷
    data = requests.get(url).text              #獲得目標url 程式碼

    s=etree.HTML(data)     #解析下載的資料data
    #獲取元素的Xpath資訊  file=s.xpath('元素的xpath資訊/text()')
    file=s.xpath('//*[@id="content"]/div/div[1]/div/table')   #shift+ctrl+c     右鍵 copy copyxpath
    #根據不同的需求 修改一下xpath 去掉陣列[]  和  /tbody 標籤
    time.sleep(3)   #延遲  防止被檢測

    for div in file:
        title = div.xpath("./tr/td[2]/div[1]/a/@title")[0]
        href = div.xpath("./tr/td[2]/div[1]/a/@href")[0]
        score=div.xpath("./tr/td[2]/div[2]/span[2]/text()")[0]
        num=div.xpath("./tr/td[2]/div[2]/span[3]/text()")[0].strip("(").strip().strip(")").strip()
        scrible=div.xpath("./tr/td[2]/p[2]/span/text()")

        if len(scrible) > 0:
            print("書名:{}, 目標網址:{}, 評分:{}, 人數:{}, 評語:{}\n".format(title,href,score,num,scrible[0]))
        else:
            print("{},{},{},{}\n".format(title,href,score,num))