csv.writer用法
import requests
from lxml import etree
import pymongo
import csv
url='https://bj.58.com/shuma/28049255291945x.shtml'
response=requests.get(url)
#print(response.text)
html = etree.HTML(response.text)
print(html)
articles=[]
title=html.xpath('//div[@class="basicinfo clearfix"]/div[@class="detail-title"]/h1/text()')[0].strip()
price=html.xpath('//div[@class="infocard__container__item"]/div/span/text()')[0].strip()
date=html.xpath('//div[@class="detail-title__info"]/div[1]/text()')[0].strip()
area=html.xpath('//div[@class="infocard__container__item"]/div[2]/a/text()')[0]
articles.append([title,price,date,area])
print(articles)
#第二种
with open('tongcheng12.csv','w',newline="")as f:
writer=csv.writer(f)
writer.writerow(['title','price','date','area'])
#writer.writerow(articles)
for row in articles:
writer.writerow(row)
csv.DictWriter用法
import requests
from lxml import etree
import pymongo
import csv
url='https://bj.58.com/shuma/28049255291945x.shtml'
response=requests.get(url)
#print(response.text)
html = etree.HTML(response.text)
print(html)
dict={}
dict['title']=html.xpath('//div[@class="basicinfo clearfix"]/div[@class="detail-title"]/h1/text()')[0].strip()
dict['price']=html.xpath('//div[@class="infocard__container__item"]/div/span/text()')[0].strip()
dict['date']=html.xpath('//div[@class="detail-title__info"]/div[1]/text()')[0].strip()
dict['area']=html.xpath('//div[@class="infocard__container__item"]/div[2]/a/text()')[0]
with open('tongcheng30.csv','w',newline="")as f:
fieldnames=['title','price','date','area']
writer=csv.DictWriter(f,fieldnames=fieldnames)
writer.writeheader()
writer.writerow(dict)