跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Python 爬虫 请教能实现我的这两点吗?
未分類
26 6 月 2020

Python 爬虫 请教能实现我的这两点吗?

Python 爬虫 请教能实现我的这两点吗?

資深大佬 : leihongjiang 8

因为自己需要浏览很多的页面,工作量太大,也找不到合适类似的软件. 所以自己想写两个爬虫

1:根据需要的网站 爬取到标题和 url 根据自己的需求浏览 2:设置关键词 搜索 全部抓取数据 然后设置爬虫判断是否展示

如果 Python 小白 开始学习的话.需要多长的时间可以.

大佬有話說 (43)

  • 資深大佬 : crella

    先把要爬的页面和需求发出来

  • 資深大佬 : TimePPT

    如果需求简单,小白就别爬虫了,chrome 就有采集插件

  • 資深大佬 : wangfj2333

    我用八爪鱼就没成功过。。

  • 資深大佬 : tomczhen

    1. “根据自己的需求浏览” ,所以需求是什么?
    2. “全部抓取数据”,所以全部是怎么定义?

  • 資深大佬 : xingshu1990

    学习路线,requests (包括 get 以及 post,知道 header 哪些参数放脚本里能让爬虫爬到数据就好)
    如果目标网站没有数据加密措施,页面内容匹配需要学 re 或者 BS4 或者 XPATH 或者 lxml 。
    另外还有数据保存,比如保存 txt mysql excel 等。

  • 資深大佬 : somalia

    火车头怎么样

  • 資深大佬 : lilydjwg

    看起来需求是浏览网页时做辅助。那么,浏览器扩展它不香么?

  • 主 資深大佬 : leihongjiang

    @tomczhen 我需要看这篇文章 然后打开链接就可以了.
    全部抓取 就是抓取 搜索到的所有页面 然后设置判断

  • 資深大佬 : imn1

    我知道这种需求,以前有考虑过,放弃
    实际上就是针对没有 sitemap 、没有站内搜索,或者这两方面做得不好的站点,自己按需导航
    例如 V2EX 的节点 sitemap 还过得去,但站内搜索就……

    放弃原因并不是难写,而是耗费储存空间、耗时,一个工作要么空间换时间、要么时间换空间,两者都耗费就不值得做
    而且这样爬不仅仅是一两天的事,是个常态,这样就极可能被网站 ban,得不偿失

    建议善用 Ctrl-F 或者写页内脚本,把不想看的内容 display:none,或者 highlight 想看的内容

  • 資深大佬 : dsg001

    html,css,xpath,正则,如果这些都熟,专心学下 python 一个月差不多了

  • 主 資深大佬 : leihongjiang

    @lilydjwg 有可以聚合的吗.

  • 主 資深大佬 : leihongjiang

    @imn1 如果有成品的采集 不是更方便吗

  • 主 資深大佬 : leihongjiang

    @TimePPT 给推荐下

  • 主 資深大佬 : leihongjiang

    @wangfj2333 八爪鱼能抓取 跳转后的链接吗

  • 主 資深大佬 : leihongjiang

    @somalia 火车头需要单击点开 某个任务 才能查看到数据

  • 主 資深大佬 : leihongjiang

    @dsg001 如果我只抓取 10 个网站的 首页更新的文章 有什么好的办法吗.毕竟一个月太长了

  • 資深大佬 : lilydjwg

    @leihongjiang #11 我的意思是你自己按你的需求写。

  • 資深大佬 : dsg001

    @leihongjiang 外包?或者把需求写清楚,偶尔有大手子顺手就写了

  • 資深大佬 : falcon05

    挺简单,小白也很容易,一周应该能搞搞定了吧,就模拟请求,读写文件,字符串处理,如果有 RSS feed,就更简单了。

  • 資深大佬 : Junn

    PY 爬虫的实例教程看一两个,然后 PY 基本语法什么教程看一遍,1 ~ 2 天吧
    看 HTML 、CSS 、正则等等相关教程,1 天吧
    参考教程、文档、根据自己需求开始干,1 ~ 2 天吧

    总体努力的话 1 周可以了~

  • 資深大佬 : tlday

    @falcon05 并不是每个网站都有 RSS feed,也不是每个网站的 sitemap 都健全,还有一些 SPA 单页应用的网站链接和内容是动态 js 渲染的,对于一些搜索功能很差甚至没有搜索功能的网站,这个需求约等于抓取整个网站的内容。所以你需要知道以怎样的方式才能找齐“整站所有内容”,上面 @imn1 的回复才是针对需求了解的比较清楚的。主不给具体的网站,说很简单很容易有点太武断了。

  • 資深大佬 : falcon05

    @tlday 内容格式只是一个小方面,没有说 rss 是必需的啊,主是只看首页的更新文章,有 RSS 就弄个 RSS/xml 解析器,有 json 接口的就解析 json,即便都没有只有 html,就找个 html 解析器,也不是很大的问题,beautifulsoup 的教程烂大街。我并没有说正则,因为主说自己是小白。

  • 資深大佬 : xiaozizayang

    到宣传自己开源项目的时候了

  • 資深大佬 : hbolive

    感觉就是个定制版的百度搜索,输入关键字,然后设置些条件(比如我设置不显示 csdn 的),符合的就显示。。

  • 資深大佬 : myCupOfTea

    用 scrapy 太简单了,几行代码就完事了

  • 資深大佬 : xingshu1990

    @myCupOfTea scrapy 的学习成本 比我在 5 里说的还高,scrapy 的安装就比较困难,更别说后面的启动命令。

  • 主 資深大佬 : leihongjiang

    我怎么感觉应该不难啊 估计我没把我的要求表达清楚
    页面 1-10 每个页面设置 单独的 xpath 定位 获得 title 和 rul 的值
    然后 10 个页面爬取到的数据 按照时间倒序显示 显示爬取的时间
    然后设定多久爬取的时间 然后输入到某个地方

    例如:网站 A 更新了新的文章 然后我就可以看到 B 更新了文章 我可以看到.

  • 資深大佬 : lithbitren

    对于入门来说,这种一般都坑在数据持久化吧,爬虫部分一般几行就能解决,html 看不懂都可以

  • 資深大佬 : hgjian

    nodejs+puppeteer

  • 資深大佬 : Cy086

    @myCupOfTea 如果有反爬呢

  • 資深大佬 : Cy086

    不如发一个网址出来, 大家瞅瞅好不好爬, 是否有反爬措施再给你推荐思路

  • 資深大佬 : winnerczwx

    @xingshu1990 感觉你用错方法了,scrapy 安装不是一句 pip 就行了吗?熟悉框架后新建一个项目也就 5 分钟左右全部配置好,可以开始写业务了。启动爬虫也就是一句代码的事。至于学习成本,我感觉它的文档做的还不错,比较齐全

  • 資深大佬 : icegaze

    二十年前我用的是 telportpro
    完全满足抓取网站网页的需求,,,^_^

  • 主 資深大佬 : leihongjiang

    www.aidiyu.com/wangzhan

  • 資深大佬 : justin2018

    http://www.locoy.com/ 火车头~ 快速 满足主需求 还不用学习 python

  • 資深大佬 : crella

    我写的 ruby 脚本,数据以 data.json 存在文件夹里。
    页面解析的大概流程:打开“开发人员工具”,切换到 Network 标签,选中 XHR,点击页面上的”加载更多“按钮,看到加载的请求如图: https://sm.ms/image/hGYR8yJce4WXL7a
    多点几次,发现访问的页面形式是 https://www.aidiyu.com/wangzhan/page/页面序号(数字),选择其中一页进行分析。

    接下来 xpath 的分析直接参考代码中的实现。先按 xpath:<article id=”post-ID” …>来选择项目,再分析每个项目的值。

    代码: https://gitee.com/crella/codes/guori0c8dh9s6myz32b5n96

    @leihongjiang

    python 对应用 lxml 或者 beautifulsoup,写的 xpath 与 ruby 的 Nokogiri 的形式可能有不同。

  • 資深大佬 : crella

    gitee 又抽风了?我设置代码的权限为”公开“的。
    代码换个地址: https://gitee.com/crella/rubycode/blob/master/aidiyu.rb 。

  • 資深大佬 : myCupOfTea

    @Cy086 scrapy 只支持中间件,加个代理就行了,反正确实挺简单的

  • 資深大佬 : myCupOfTea

    @xingshu1990 scrapy 安装也难吗?直接用 conda 啊

  • 資深大佬 : myCupOfTea

    @Cy086 多了个只

  • 資深大佬 : myCupOfTea

    @xingshu1990 主要 scrapy 还有个 shell,可以很方便新手测试

  • 資深大佬 : xingshu1990

    @myCupOfTea 主要是会看文档就能上手 scrapy,就不会过来问问题了。
    如果不考虑 linux 还是 windown,当然是 anaconda 就好了,如果是 windown,还要看是 7 还是 10 以及里面的关联库的版本,windown 经常是不能正确安装 pypiwin32 或者 ssl 版本有问题,或者是 lxml 安装报错之类的问题,对于初学者来说学习成本会很大。

  • 資深大佬 : myCupOfTea

    @xingshu1990 俺有次没用 anaconda,自己安装确实坑特别多,搞了半天最后说我 openssl 有问题

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具