Python爬虫作业

Python青苔计划(九)数据写入csv(受阻)

2017-05-14  本文已影响0人  请万万喝水
青苔计划

此文只为打卡

高能预警,前方戾气严重

爬虫作业区两极分化,1组想要找到可参照的学习例子少之又少,因为2组都跑到scrapy了(手动无奈)。网络和书籍并不能详细解说,这也是小分队的瓶颈期吧!该放弃的已经放弃了,在前面的人已经走远了,欲哭无泪的赶脚

csv文件的写入,我搞了一天也没有完全弄明白

import requests
from bs4 import BeautifulSoup
import csv
a=[]
def get_inf(url):
    html=requests.get(url)
    soup=BeautifulSoup(html.text,"lxml")
    title=soup.find_all("div",{"class":"content"})
    for one in title:
        a.append(one.get_text())


urls=("http://www.qiushibaike.com/8hr/page/{}/?s=4979871".format(str(i))for i in range(1,2))
for url in urls:
    get_inf(url)

#print(a)
import csv
with open("D:/test.csv","w",newline="") as datacsv:
     #dialect为打开csv文件的方式,默认是excel,delimiter="\t"参数指写入的时候的分隔符
     csvwriter = csv.writer(datacsv,dialect = ("excel"))
     #csv文件插入一行数据,把下面列表中的每一项放入一个单元格(可以用循环插入多行)
     csvwriter.writerow(a)

尴尬的是数据分布在同一行,我想实现的是分布在同一列###

image.png

修改代码:下方使用循环

with open("E:/text.csv","w",newline="") as datacsv:
     #dialect为打开csv文件的方式,默认是excel,delimiter="\t"参数指写入的时候的分隔符
     csvwriter = csv.writer(datacsv,dialect = ("excel"))
     #csv文件插入一行数据,把下面列表中的每一项放入一个单元格(可以用循环插入多行)
     csvwriter.writerow(['content'])
     for one in a:
        csvwriter.writerow(one)

然后出现了锤子的大爆炸,每一个词都分开了


image.png

此时只想哭!先标记下,明天继续分析

上一篇下一篇

猜你喜欢

热点阅读