xiaotaomi

  • 2020-03-20
  • 发表了主题帖: python爬虫小白学习笔记之数据存储(一)

    一)存储到mongodb:     1.创建一个client对象,调用pymongo的MongoClient()方法,并传入数据库的url,使用client[db名]创建一个数据库db, 调用db[collection名],创建一个表coll,调用coll.insert(dict对象)插入数据。 # class MongoPipeline(object): #  #     def __init__(self,mongo_url,mongo_db): #         self.mongo_url = mongo_url #         self.mongo_db = mongo_db #  #     @classmethod #     def from_crawler(cls,crawler): #         return cls ( #             mongo_url=crawler.settings.get('MONGO_URL'), #             mongo_db =crawler.settings.get('MONGO_DB') #         ) #     def open_spider(self,spider): #         self.clict = pymongo.MongoClient(self.mongo_url) #         self.db  = self.clict[self.mongo_db] #  #     def process_item(self,item,spider): #         name = self.__class__.__name__ #         self.db[name].insert(dict(item)) #         return item #     def close_spider(self,spider): #         self.clict.close() ———————————————— 版权声明:本文为CSDN博主「赵df」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_41707051/article/details/80878081

  • 2020-03-10
  • 发表了主题帖: 新手使用python采集数据的尴尬事之代理ip

      背景 , 原本不是爬虫的,因公司业务需求需要一些前程无忧的数据,被迫上岗,简单的学了些python。因为网站的特殊性,访问次数多了就要封ip,意味着还要找ip。所以在网上随便找了家代理叫亿牛云,然后跟客服沟通了下我这个小白的需求,客服跟我推介了他们家的爬虫动态转发代理,说适合我这样的小白使用,使用方式比较简单,我就抱着试试的想法接受了。客服给我发了一段关于python怎么使用他们家代理的代码示例,https://www.16yun.cn/help/ss_demo/#1python。打开看了之后我以为示例就是可以直接使用的,而且客服也说过代码示例可以直接复制使用,我就直接复制然后把目标网站改成了我自己的,代码如下 #! -*- encoding:utf-8 -*-           import requests         import random           # 要访问的目标页面         targetUrl = "www.mkt.51job.com"           # 要访问的目标HTTPS页面         # targetUrl = "https://www.mkt.51job.com"           # 代理服务器(产品官网 www.16yun.cn)         proxyHost = "t.16yun.cn"         proxyPort = "31111"           # 代理隧道验证信息         proxyUser = "username"         proxyPass = "password"           proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {             "host" : proxyHost,             "port" : proxyPort,             "user" : proxyUser,             "pass" : proxyPass,         }           # 设置 http和https访问都是用HTTP代理         proxies = {             "http"  : proxyMeta,             "https" : proxyMeta,         }             #  设置IP切换头         tunnel = random.randint(1,10000)         headers = {"Proxy-Tunnel": str(tunnel)}               resp = requests.get(targetUrl, proxies=proxies, headers=headers)           print resp.status_code         print resp.text 然后就去运行,结果是这样   然后就去找客服,结果人家说那只是代码示例,里面的代理参数是需要他们提供重新配置才可以使用,顿时就觉得自己真的很小白,然后请客服开通了代理测试了下,结果运行起了,对我这样的小白来还好使用的方式简单,不然又要各种查资料了。我想很多人都是这样吧,刚开始的时候各种小白问题都有可能存在,看来不管是哪个领域,还是要深入的学习才好!

  • 2020-02-26
  • 发表了主题帖: 这里没有做技术的吗?

    感觉这个板块里面的人都没有做技术啊?哈哈

  • 回复了主题帖: 好书推荐:医用电子学

    感谢分享

  • 2020-02-04
  • 发表了日志: 亿牛云告诉你如何选择适合自己的代理IP商

  • 2020-01-13
  • 发表了日志: 网络爬虫为什么使用独享代理IP池效果更好

  • 2019-12-26
  • 发表了主题帖: Java实例——基于jsoup的简单爬虫添加代理示例

      import java.io.IOException; import java.net.Authenticator; import java.net.InetSocketAddress; import java.net.PasswordAuthentication; import java.net.Proxy; import org.jsoup.Jsoup; import org.jsoup.nodes.Document;   public class Demo{     // 代理隧道验证信息     final static String ProxyUser = "16KASDA";     final static String ProxyPass = "1231321";       // 代理服务器     final static String ProxyHost = "t.16yun.cn";     final static Integer ProxyPort = 31111;       // 设置IP切换头     final static String ProxyHeadKey = "Proxy-Tunnel";         public static String getUrlProxyContent(String url)     {         Authenticator.setDefault(new Authenticator() {             public PasswordAuthentication getPasswordAuthentication()             {                 return new PasswordAuthentication(ProxyUser, ProxyPass.toCharArray());             }         });         // 设置Proxy-Tunnel         Random random = new Random();         int tunnel = random.nextInt(10000);         String ProxyHeadVal = String.valueOf(tunnel);           Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(ProxyHost, ProxyPort));           try         {             // 处理异常、其他参数             Document doc = Jsoup.connect(url).timeout(3000).header(ProxyHeadKey, ProxyHeadVal).proxy(proxy).get();               if(doc != null) {                 System.out.println(doc.body().html());             }         }         catch (IOException e)         {             e.printStackTrace();         }           return null;     }       public static void main(String[] args) throws Exception     {         // 要访问的目标页面         String targetUrl = "http://httpbin.org/ip";             getUrlProxyContent(targetUrl);     }}    

  • 2019-12-02
  • 发表了日志: 代理IP让网络爬虫更快速抓取数据

  • 2019-11-25
  • 发表了日志: 网络爬虫一定要用代理IP吗

  • 2019-11-18
  • 发表了日志: 关于爬虫采集中使用HTTP代理ip的认知误区

  • 2019-11-11
  • 发表了日志: python爬虫简单的添加代理进行访问的实现代码

  • 2019-11-01
  • 发表了日志: 电商可以使用代理ip刷单吗?

  • 2019-10-23
  • 发表了日志: 实践出真知-C Sharp中集成ip代理(以亿牛云爬虫代理为例)

  • 2019-10-14
  • 发表了主题帖: 爬虫可以采集哪些数据?爬虫借用什么代理可以提高效率

      学习爬虫的门槛非常低,特别是通过Python学习爬虫,即使是网上也能找到许多学习爬虫的方法,而且爬虫在数据采集方面效果比较好,比如可以采集几万、上百万网页数据进行分析,带来极有价值的数据,不仅能了解同行的情况,也许还能影响企业的决策。 一、爬虫可以采集哪些数据 1.图片、文本、视频     爬取商品(店铺)评论以及各种图片网站,获得图片资源以及评论文本数据。   掌握正确的方法,在短时间内做到能够爬取主流网站的数据,其实非常容易实现。 2.作为机器学习、数据挖掘的原始数据   比如你要做一个推荐系统,那么你可以去爬取更多维度的数据,做出更好的模型 3.进行市场调研和商业分析   爬取知乎优质答案,筛选各话题下最优质的内容; 抓取房产网站买卖信息,分析房价变化趋势、做不同区域的房价分析;爬取招聘网站职位信息,分析各行业人才需求情况及薪资水平。   二、爬虫借用什么代理可以提高效率 1.借用http代理——亿牛云   爬虫通常通过换IP来突破限制,比如亿牛云代理。   爬虫一般采集一次或者多次就会更换ip,因为局域网对上网用户的端口、目的网站、协议、游戏、即时通讯软件等的限制,网站对于IP的访问频率、访问次数的限制等,如果要突破这些限制,是需要使用代理IP,通过更换IP,来增加访问的次数。   另一方面,通过亿牛云爬虫代理也可以隐藏用户的真实身份,访问一些不希望对方知道你IP的服务器,爬取一些数据等等。   在使用爬虫时,如果获取速度过快,通常会出现验证码验证当前访问的是人还是爬虫,如果我们想获取到验证码,就需要从这个验证码的图片中分析出来到底是什么字符。   对于爬虫可以采集哪些数据,通过上文的认识,大家都有数了,使用爬虫的过程中,为了更有效率的采集数据,需要借用亿牛云的http代理来提高效率。可以使用亿牛云代理,增加访问次数,提高效率。

  • 发表了日志: 爬虫可以采集哪些数据?爬虫借用什么代理可以提高效率

  • 2019-10-08
  • 发表了主题帖: 如何使用代理IP进行数据抓取,PHP爬虫抓取亚马逊商品数据

      什么是代理?什么情况下会用到代理IP? 代理服务器(Proxy Server),其功能就是代用户去取得网络信息,然后返回给用户。形象的说:它是网络信息的中转站。通过代理IP访问目标站,可以隐藏用户的真实IP。 比如你要抓取一个网站数据,该网站有100万条内容,他们做了IP限制,每个IP每小时只能抓1000条,如果单个IP去抓因为受限,需要40天左右才能采集完,如果用了代理IP,不停的切换IP,就可以突破每小时1000条的频率限制,从而提高效率。   其他想切换IP或者隐藏身份的场景也会用到代理IP,比如SEO等。   代理IP有开放代理也有私密代理,开放代理是全网扫描而来的,不稳定,不适合爬虫,如果自己随便用用还好。用爬虫抓数据,最好使用私密代理。私密代理网上有很多提供商,稳定性参差不齐,现在我们公司使用的是“亿牛云”提供的私密代理。 我们公司有个项目是抓取亚马逊数据来进行分析销量、评论等,用PHP进行抓取,抓取亚马逊要特别注意header头,否则输出的数据就是空了。我们之前是使用的其他家代理的api模式的,但是自己管理ip池觉得很麻烦,所以选择了亿牛云提供的爬虫代理,动态转发模式的,不需要我们自己管理ip池,直接进行数据采集,这很方便也节约了很多时间。                  $url = "https://www.amazon.com/dp/B01H2S9F6C";         $urls = "https://httpbin.org/ip";           define("PROXY_SERVER", "tcp://t.16yun.cn:31111");           define("PROXY_USER", "16YUN123");         define("PROXY_PASS", "123456");           $proxyAuth = base64_encode(PROXY_USER . ":" . PROXY_PASS);           $tunnel = rand(1,10000);           $headers = implode("\r\n", [             "Proxy-Authorization: Basic {$proxyAuth}",             "Proxy-Tunnel: ${tunnel}",         ]);         $sniServer = parse_url($urls, PHP_URL_HOST);         $options = [             "http" => [                 "proxy"  => PROXY_SERVER,                 "header" => $headers,                 "method" => "GET",                 'request_fulluri' => true,             ],             'ssl' => array(                     'SNI_enabled' => true, // Disable SNI for https over http proxies                     'SNI_server_name' => $sniServer             )         ];         print($url);         $context = stream_context_create($options);         $result = file_get_contents($url, false, $context);         var_dump($result);         print($urls);         $context = stream_context_create($options);         $result = file_get_contents($urls, false, $context);         var_dump($result);?>      

  • 发表了日志: 如何使用代理IP进行数据抓取,PHP爬虫抓取亚马逊商品数据

  • 2019-09-03
  • 发表了日志: 大量数据采集必须使用代理ip吗?

最近访客

< 1/1 >

统计信息

已有7人来访过

  • 芯币:33
  • 好友:--
  • 主题:6
  • 回复:1
  • 课时:--
  • 资源:--

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言