magento(麦进斗)问题

我给我的客户提供你了一个基于magento(麦进斗)(麦进斗)的电子商务网站,它们大概有2000多个商品。为了提高效率和节约时间,我打算从些个爬虫从上面爬两千个数据下来,但是当我使用get_file_contentsto收集产品信息页面的时候出现了一个严重的问题。

这个问题是:

如果你要查看这些商品,你需要登录进去。但是,标准的magento(麦进斗)是不允许我登进去的,我该怎么解决这个问题?

 

 

解决方案:

使用stream_context_create的话,可以在你需要的时候给file_get_contents发送必要的信息。

我的建议是,打开你的浏览器和登录到网站。打开Firebug来查看你的发送和接收信息。

这里给你列出了你需要编辑的php文档:

<?php

// Create a stream

$opts = array(

  'http'=>array(

    'method'=>"GET",

    'header'=>"Accept-language: en\r\n" .

              "Cookie: foo=bar\r\n"

  )

);

 

$context = stream_context_create($opts);

 

// Open the file using the HTTP headers set above

$file = file_get_contents('http://www.example.com/'false, $context);

?>

编辑(2):这是从最简单的方法解决你的问题的范围内出发,但是如果你想知道如何把网站之后,你可以看看网页的DOM Document::loadhtml方法。这将会给你所需要的功能(即XPath查询,相对应的,getelementsbyid)把你需要的东西。

如果你想把简单的东西,你也可以使用正则表达式与preg_match_all

 

更多内容,请关注麦进斗科技(www.maijindou.com.cn)

转载于:https://my.oschina.net/u/3350137/blog/866342

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值