Python网络爬虫中爬到的数据怎么分列分行写入csv文件中
回复“资源”即可获赠Python学习资料
今
日
鸡
汤
明朝挂帆席,枫叶落纷纷。大家好,我是皮皮。
一、前言前几天在Python白银交流群有个叫【꯭】的粉丝问了一个Python网络爬虫中爬到的数据怎么分列分行写入csv文件中的问题,这里拿出来给大家分享下,一起学习下。
现在的状态是下图这样的。
代码截图如下:
问题补充:
二、解决过程这里【瑜亮老师】给出了一个代码,如下所示:
et=etree.HTML(resp)tr_list=et.xpath("//table//tr")foriintr_list:#获取电影信息,并去掉前面的多余的那个圆点data=",".join(i.xpath("./td//text()")[1:])+"\n"#追加写入文件withopen("电影.csv","a",encoding="utf-8")asf:f.write(data)
这个代码亲测好使,不过还有更好的思路。
这里【月神】给出了一个代码,如下所示:
importrequestsfromlxmlimportetreeurl="https://piaofang.maoyan.com/session"headers={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)""Chrome/100.0.4896.75Safari/537.36Edg/100.0.1185.36","Referer":"https://piaofang.maoyan.com/box-office?ver=normal"}resp=requests.get(url=url,headers=headers).textet=etree.HTML(resp)pf_data=et.xpath("//div[@class="tiny-tabletiny-table-no-bordertiny-table-middle"]//td//text()")##保存csv文件部分pf_string="".join(f"\n{i},"ifi=="•"elsef"{i},"foriinpf_data).strip("\n").split("\n")withopen("pf_maoyan.csv","w",encoding="utf-8-sig")asf:foriinpf_string:f.writelines(i.strip(",")+"\n")
你以为这就完事了?还有更好的方法在后头呢。下面的这个代码是不用xpath写的,改用pandas处理网页结构。
importrequestsimportpandasaspdurl="https://piaofang.maoyan.com/session"headers={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)""Chrome/100.0.4896.75Safari/537.36Edg/100.0.1185.36","Referer":"https://piaofang.maoyan.com/box-office?ver=normal"}resp=requests.get(url=url,headers=headers).text#利用pandas保存csv文件pd.read_html(resp)[0].to_csv("pf_maoyan.csv",encoding="utf-8-sig",index=False,header=None)
小伙伴们直呼好家伙。
当然了,这个网站可以抓取的方法有很多,感兴趣的小伙伴们也可以试试看,就当练习下了。
三、总结大家好,我是皮皮。这篇文章主要分享了Python网络爬虫中爬到的数据怎么分列分行写入csv文件中的问题,文中针对该问题给出了具体的解析和代码演示,帮助粉丝顺利解决了问题。
最后感谢粉丝【꯭】提问,感谢【月神】、【瑜亮老师】给出的具体解析和代码演示,感谢粉丝【邓旺】、【千葉ほのお】、【Jason】、【月牙弯弯】等人参与学习交流。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
-------------------End-------------------
往期精彩文章推荐:
盘点一道字典转换基础题目
盘点一个文件读取时utf-8错误的解决办法
手把手教你安装Anaconda和启动jupyter(常见问题解决方法分享)
盘点一个Pandas数据清洗题目
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
相关阅读
-
世界热推荐:今晚7:00直播丨下一个突破...
今晚19:00,Cocos视频号直播马上点击【预约】啦↓↓↓在运营了三年... -
NFT周刊|Magic Eden宣布支持Polygon网...
Block-986在NFT这样的市场,每周都会有相当多项目起起伏伏。在过去... -
环球今亮点!头条观察 | DeFi的兴衰与...
在比特币得到机构关注之后,许多财务专家预测世界将因为加密货币的... -
重新审视合作,体育Crypto的可靠关系才能双赢
Block-987即使在体育Crypto领域,人们的目光仍然集中在FTX上。随着... -
简讯:前端单元测试,更进一步
前端测试@2022如果从2014年Jest的第一个版本发布开始计算,前端开发... -
焦点热讯:刘强东这波操作秀
近日,刘强东发布京东全员信,信中提到:自2023年1月1日起,逐步为...