美文网首页生活不易 我用python爬虫专题程序员
2017-4-3记爬点评酒店的一次玄学debug

2017-4-3记爬点评酒店的一次玄学debug

作者: CvnYv | 来源:发表于2017-04-03 20:25 被阅读0次

其实3月29日就写了爬取点评酒店的代码(想以后去成都工作生活所以就选了成都),但当天运行爬到第三页就出错了,由于功力尚浅,debug了一晚上不知什么原因造成了bug,就放那等日后再说了.今天尝试run了一下,又可以用了,不知是什么神秘力量暗中抬了我一手.
开发环境python3.5, PyCharm, Ubuntu16.0.4
暂时还只会写点简单的代码抓取静态页面,所以用到的库都很简单:

  • requests
  • BeautifulSoup (刚学会BeautifulSoup所以就多练练,尽量不用re)
  • csv (也是只懂点皮毛)

分析网页

  • 观察url的特征并构建url(本来当时是打算按之前那个爬豆瓣top250的套路模仿人类实现翻页功能的,然后return下一页的链接,因为到第3页就爬不动了,所以改成了利用range手动拼接下一页的链接地址)
链接.png

for n in range(1,51):

    url ='http://www.dianping.com/chengdu/hotel/p'+str(n)

  • 观察页面特征,由于本次只打算爬名称,位置,价格以及每个酒店的详情链接,所以F12一下,结合网页源代码想一下用哪个标签比较稳妥一点,然后BeautifulSoup出要爬的信息
详情.png
        soup = BeautifulSoup(html, "lxml")
        ul_list = soup.find("ul", attrs={"class": "hotelshop-list"})
        for li_list in ul_list.find_all("li", attrs={"class": " hotel-block"
                                                     " J_hotel-block"}):
            hotel_name = li_list.find("h2", attrs={"class": "hotel-name"}).a.string
            hotel_url = 'http://www.dianping.com' + li_list.find("h2", attrs={
                "class": "hotel-name"}).a['href']
            hotel_place = li_list.find("p", attrs={"class": "place"}).a.string\
                          + ', ' + li_list.find("span", attrs={"class": "walk-dist"}).string
            hotel_price = li_list.find("div", attrs={"class": "price"}).strong.string

把爬到的数据保存到csv文件


csv_file =open("../files/chengduhotel.csv",'wt',encoding='utf-8')

try:

    writer = csv.writer(csv_file)

    writer.writerow(('酒店名称','位置','价格','详情链接'))

    writer.writerow((hotel_name,hotel_place,hotel_price,hotel_url))

效果图

效果.png

源码

https://github.com/CvnYv/learn-spider/blob/master/2017-3-29%E5%AD%98%E5%82%A8%E9%85%92%E5%BA%97%E6%95%B0%E6%8D%AE.py

相关文章

  • 2017-4-3记爬点评酒店的一次玄学debug

    其实3月29日就写了爬取点评酒店的代码(想以后去成都工作生活所以就选了成都),但当天运行爬到第三页就出错了,由于功...

  • 手把手用Python网络爬虫带你爬取全国著名高校附近酒店评论

    /1 前言/ 简介:本文介绍如何用python爬取全国著名高校附近的酒店点评,并进行分析,带大家看看著名高校附近的...

  • 记一次,曲折的Debug

    交代背景 事件曲折 转机 总结

  • 记一次Debug过程

    前言 在写实现等高自定义Cell自测项目时,自己导致的数个Bug。因为项目较为简单,所以在实现时特意使用了一些之前...

  • 记一次程式Debug

    周末又加了一天班,这一段时间雨水不断,江南独有的梅雨季节又来了,年年这个时候都这样。 其实最近也不是太忙,就是一个...

  • 白发几根

    白头发,在心理上,也有一个解释:我尽力了! 一一慢爬爬 从酒店出来,又一次迷...

  • 2017-4-3,食记。

    顺序:左右,上下! 四物汤 今天开始的四物汤加乌鸡1块 小米玉米粥 小米、玉米渣各1勺,绿葡萄干2勺,红枸杞若干。...

  • 欢迎使用简书

    想做个专业写酒店点评的工具。 和只有酒店点评的网站,对 交互和UI 和 简书一样出色。

  • 酒店网络运营差评回复不好,当心客人离你而去

    网络点评已经越来越得到消费者的重视,它不仅是宾客对酒店住后评价的感受,更是酒店重要的营销展示窗口,酒店点评的回复...

  • 记一次蛋碎的debug

    上星期接到任务要研究一个晶体的xrd,由于任务目标有少许改变,我便乐呵呵地用一个我之前准备好但没用上的自制模块来工...

网友评论

    本文标题:2017-4-3记爬点评酒店的一次玄学debug

    本文链接:https://www.haomeiwen.com/subject/nqvoottx.html