练习:爬百度实时热点top10的排序,标题内容,链接
# -*- coding: UTF-8 -*-
import requests
from lxml import etree
import csv
#1.爬取
urls = "http://top.baidu.com/buzz?b=1"
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36"}
res = requests.get(url = urls,headers=headers)
res.encoding = 'gb2312'
html=etree.HTML(res.text)
#response = res.content.decode('gb2312')推荐用这种。
#html = etree.HTML(response)
cons = html.xpath('//table[@class="list-table"]//tr')
#2.数据提取
paiming = []
guanjianci = []
lianjie = []
sousuozhishu = []
for item in cons:
pm = item.xpath('td[@class="first"]/span/text()')
if pm:#判断是否是空列表
paiming.append(pm[0])#pm[0]取pm列表第一个值,如果没有【】就会将列表写入,会有一个[]
gjc = item.xpath('td[@class="keyword"]/a[1]/text()')
if gjc:#判断是否是空列表
guanjianci.append<