文本分析之数据收集

做文本分析时,在很多情况下,需要我们自己去爬外部网站的数据,由于不同的网站有不同的网页结构,所以处理起来就需要根据网页不同去做解析。解析网页使用的语言为python,因为他们提供了很多的类似插件的工具包,最终比较一下,使用的是requests包和soupy包,网页爬的数据做为以后文本分析处理的基础,关于本篇文章使用的工具包的相关参考文档如下:

http://www.python-requests.org/en/latest/

http://soupy.readthedocs.org/en/stable/index.html

下面以两个例子来说明:

解析豆瓣网站的书评,把用户评分,评分时间和评分内空取出来,并保存成cvs格式的文档。爬豆瓣网书评时需要注意服务器会返回403错误,还有就是保存文件时可能会因为编码问题导致csv文件保存失败。实现部分请直接看代码:

我们以http://book.douban.com/subject/26425831/comments/为例,做数据抓取:

def get_db_book_review(data_list, item_id, page):
    # 需要抓取网页的URL地址
    target_url = "http://book.douban.com/subject/" + str(item_id) + "/comments/hot?p=" + str(page)
    logging.info("当前抓取的网页地址为:" + target_url)
    # 设置User-Agent,如果没有配会报403错误
    client = requests.session()
    client.headers = {'User-Agent': 'Reddit API - update profile'}
    target_response = client.get(target_url)
    logging.info(target_re
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值