本帖最后由 offmask 于 2016-10-23 01:05 编辑
为了爬点小数据同时试用了集搜客和另一个工具。两者都有免费版本,但另一个工具数据导出需要积分,集搜客可以不用积分。不过另一个工具导出的数据有多种格式可选,而集搜客如果不用积分就只能得到一堆xml文件。本着DIY的原则,用Python折腾了一个将多个xml文件中的内容进行提取并合并到一个txt文件中的小工具。 两个爬虫工具的简单试用对比:对能直接从页面提取的元素都有很好的支持,但如果是从源码中提取,集搜客的XPath支持貌似更好些。 也可以通过Excel的开发工具建立xml映射将多个xml导入一张sheet内,站内有教程。 用到了Python3和BeautifulSoup库。其实不用BeautifulSoup也可以用正则表达式匹配出来。
- #Merge .xml files into a csv-ready .txt.
- #Matt Sun
- #http://offmask.com
- #Oct 22, 2016
- #coding=utf-8
- filePath = "c:\\work\\marketplace\\imgURL\\"
- #放xml文件的文件夹路径
- import os
- from bs4 import BeautifulSoup
- files = os.listdir(path = filePath)
- outF = open('c:\\work\\marketplace\\imgurl.txt','a')
- for i in range(len(files)):
- xmlF = open(filePath+files[i],'r')
- xmlContent = BeautifulSoup(xmlF)
- xmlF.close()
- imgUrl = xmlContent.url.text
- asin = xmlContent.fullpath.text
- outContent =asin + "," + imgUrl + "\n"
- outF.write(outContent)
- outF.close()
- print("all done!")
复制代码 |
共 0 个关于本帖的回复 最后回复于 2016-10-23 01:06