利用RCurl抓取电影团购信息

1 抓取的网址是360团购

http://tuan.360.cn/bei_jing/c_0.html?kw=电影&pageno=1#tuanFilter

2 利用firefox的FireBug插件分析其源代码,如下所示:

"//*/h3[@class=‘desc‘]" 匹配电影院名称
"//*/span [@class=‘discount‘]" 匹配原价
"//*/span [@class=‘price‘]" 匹配优惠价
"//*/div [@class=‘other-info clearfix‘]" 匹配备注信息
"//*/div[@class=‘source clearfix‘]" 匹配团购信息来源

3 源代码

## 利用RCurl抓取电影团购信息

library(RCurl)
library(XML)
library("plyr")

page <- 1:5
urlist[page]  <- paste("http://tuan.360.cn/bei_jing/c_0.html?kw=电影&pageno=",page,"#tuanFilter",sep="")
#伪造报头
myheader=c("User-Agent"="Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.6) ",
           "Accept"="text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
           "Accept-Language"="en-us",
           "Connection"="keep-alive",
           "Accept-Charset"="GB2312,utf-8;q=0.7,*;q=0.7"
)
#电影院名称
dyy_name<-c("")
#原价
last_price<-c("")
#优惠价格
now_price<-c("")
#备注
others<-c("")
#来源
tg_source<-c("")
for(url in urlist){
  #下载网址
  webpage  <- getURL(url,httpheader=myheader,.encoding="utf-8")
  #转化成XML格式
  pagetree <- htmlTreeParse(webpage,encoding="utf-8", error=function(...){}, useInternalNodes = TRUE,trim=TRUE)
  #利用XPATH筛选
  temp_name <- xpathSApply (pagetree, "//*/h3[@class=‘desc‘]", xmlValue)
  dyy_name<-c(dyy_name,temp_name)
  temp_price <- xpathSApply (pagetree, "//*/span [@class=‘discount‘]",xmlValue)
  last_price<-c(last_price,temp_price)
  temp_now_price <- xpathSApply (pagetree, "//*/span [@class=‘price‘]",xmlValue)
  now_price<-c(now_price,temp_now_price)
  temp_others <- xpathSApply (pagetree, "//*/div [@class=‘other-info clearfix‘]",xmlValue)
  others<-c(others,temp_others)
  temp_tg_source <- xpathSApply (pagetree, "//*/div[@class=‘source clearfix‘]", xmlValue)
  tg_source<-c(tg_source,temp_tg_source)
}
# 删除不必要的信息
tg_source<-laply(as.list(tg_source),function(x){
  unlist(strsplit(x,"\n"))[2]
})
# 删除不必要的信息
others<-laply(as.list(others),function(x){
  unlist(strsplit(x,"\n"))[2]
})
#组装成数据库
content<-data.frame(dyy_name,last_price,now_price,others,tg_source)
names(content)<-c(‘影院‘,‘原价‘,‘优惠价‘,‘备注‘,‘来源‘)

#写入csv文件
write.csv(content,file="电影团购信息.csv")

利用RCurl抓取电影团购信息,布布扣,bubuko.com

时间: 2024-10-05 16:10:36

利用RCurl抓取电影团购信息的相关文章

python爬虫——抓取电影天堂电影信息

做个小练习,抓取的是电影天堂里面最新电影的页面.链接地址:http://www.dytt8.net/html/gndy/dyzz/index.html 首先我们需要获取里面电影详情的网页地址: import urllib2 import os import re import string # 电影URL集合 movieUrls = [] # 获取电影列表 def queryMovieList(): url = 'http://www.dytt8.net/html/gndy/dyzz/index

Python抓取电影天堂, 零基础都可以学? 源码&amp;视频教程, 大赞!

我此次利用Python爬取电影天堂包含的源码非常清晰,所以说零基础的Python新手也能够轻松学会,真的一点都不过分. 先看我们的部分代码与爬取到的结果: 爬取到的电影资源:(可以获取视频教程) 步骤: 1. 首先导入需要的模块 2. 获取网页信息.解析结果 3.存储结果 3.编写主函数 4.运行源代码 工具: VS Code.Python3 Python最新爬取电影天堂源代码,跑代码即可爬取资源 源代码背后都有相关解释,各步骤我不进行相关讲解的原因. 原文地址:https://www.cnbl

利用Selenium爬取淘宝商品信息

一.  Selenium和PhantomJS介绍 Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样.由于这个性质,Selenium也是一个强大的网络数据采集工具,其可以让浏览器自动加载页面,这样,使用了异步加载技术的网页,也可获取其需要的数据. Selenium模块是Python的第三方库,可以通过pip进行安装: pip3 install selenium Selenium自己不带浏览器,需要配合第三方浏览器来使用.通过help命

对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App)

原文:https://www.cnblogs.com/qingqing-919/p/8444816.html 对比使用Charles和Fiddler两个工具及利用Charles抓取https数据(App) 实验目的:对比使用Charles和Fiddler两个工具 实验对象:车易通App,易销通App 实验结果: 1.     接口数据呈现方式对比: (1) Charles树状结构呈现于屏幕,清晰易区分 (2)Fiddler默认按时间倒叙呈现所有接口数据,不易区分 个人觉得图形界面上Charles

利用Fiddler抓取websocket包

一.利用fiddler抓取websockt包 打开Fiddler,点开菜单栏的Rules,选择Customize Rules... 这时会打开CustomRules.js文件,在class Handlers中加入以下代码 static function OnWebSocketMessage(oMsg: WebSocketMessage) { // Log Message to the LOG tab FiddlerApplication.Log.LogString(oMsg.ToString()

利用wireshark抓取Telnet的用户名和密码

使用wireshark抓取Telnet   目标ip地址(telnet  192.168.88.1 ) 1,首先打开wireshark,然后选择网卡,点击开始. 2,为了在filter中输入telnet 或者输入(ip.dst == 目标ip地址 and  tcp.port== 23). 3,看下面的数据包,找到telnet  并且能够看到data:\r\n:如下图 4,接下来再看下面的数据包,就能看到明文用户名和密码了.如下图 这时候你就可以看到明文用户名的首字母x了,继续看下去你可以找到后面

利用fiddler抓取Android app数据包

前言 做Android开发的朋友经常需要做网络数据的获取和提交表单数据等操作,然而对于调试程序而言,很难知道我们的数据到底是以怎样的形式发送的,是否发送成功,如果发送失败有是什么原因引起的.fiddler工具为我们提供了很方便的抓包操作,可以轻松抓取浏览器的发出的数据,不管是手机APP,还是web浏览器,都是可以的. 什么是fiddler 百度百科上是这样说的:Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的"进出&quo

利用HttpClient抓取话费详单等信息

由于项目需要,需要获取授权用户的在运营商(中国移动.中国联通.中国电信)那里的个人信息.话费详单.月汇总账单信息(需要指出的是电信用户的个人信息无法从网上营业厅获取).抓取用户信息肯定是要模仿用户登录授权,然后爬取自己需要的东西.自然想到了利用HttpClient. 关于HttpClient的介绍可以到官网上面查看.不过需要指出的是HttpClient 项目从3.1的版本的时候就停止了更新,而是被含有HttpClient和HttpCore两个核心模块的HttpComponents 项目所取代,后

利用libpcap抓取QQ号码信息

最近想在QQ登录时把QQ号码信息记录下来,百度了很多都没有找到具体方式,最近用Wireshark分析报文+libpcap库嗅探实现了这个小功能. 通讯背景: QQ客户端在通讯时使用UDP协议,其中数据消息报文为UDP协议,控制报文为OICQ协议(UDP协议的一种封装),控制报文命令常见如下(括号内为改命令在OICQ报文中对应二进制编码的十进制表示): "log out(1)", "Heart Message(2)", "Set status(13)&quo