准备9月份开学给学生们讲一下爬虫,激发学生的学习兴趣。比较pyspider、Pholcus、WebCollector等开源爬虫框架,最后还是选择pyspider来制作演示例子,因为不用编译、框架强大、编码直观。但是困难也是显而易见的,没接触过python语法和库都不熟,html也是10年前的认知ajax、json等只知道原理没开发经验。这几日都在看帖子重新摸索。
环境搭建上尝试了几日发现windows下使用python2.7.12 32位版运行pyspider最稳定。css选择器和webDAV都能正常使用。
环境搭建方法:安装python2.7.12 32位版;安装anaconda2 4.1.1 32位版;phantomjs-2.1.1解压后phantomjs.exe拷贝到anaconda下的script目录。下载lxml-3.6.2-cp27-cp27m-win32.whl在pip下安装,顺利用pip安装pyspider
爬取的目标是美团外卖各店的外卖菜名、价格及销量。通过浏览器访问美团外卖,输入地址就可以罗列出周边外卖店,点击一家外卖店就罗列出菜名、价格和销量。爬取起始链接输入地名定位后得到的链接
外卖店的链接http://waimai.meituan.com/res...
下面说说问题:
on_star 爬取起始链接发现只加载20条数据,每次滚动条拖到页底触发ajax多加载20条。点击按销量排序也触发ajax ajax地址 方法post 使用cookie提交参数。 我想这样设计先GET请求一次起始链接,获得cookie后模拟ajax post请求一次按销量排序,再多次请求ajax加载更多店面。这里该怎么写?response.cookie 没找到例子
爬取店内菜品、价格和销量 DIV的class名称不一致,怎么才能迭代?
推荐给你,使用fiddler这个工具,先启动这个工具,再在浏览器中输入网址,这个时候,会记录下HTTP交互的内容,这里发送的内容就是你的输入参数,而返回的数据,就是你要解析的数据。