爬虫的练习--1

news/2024/7/19 12:36:30 标签: python, 爬虫, 运维

windows环境  


 

安装 pip install virtualenv

安装指定版本的python(适用于多个版本的python

C:\Users\Administrator>virtualenv -p C:\Users\Administrator\AppData\Local\Progra
ms\Python\Python35-32\python.exe Pachong

C:\Users\Administrator\Pachong\Scripts>pip install virtualenvwrapper-win   (集中管理虚拟机,可以用 workon 管理)     ##注意是 在 sctripts里面运行此命令 linux 不需要带win

 deactivate    此命令用于退出虚拟环境

 

新建 Ten 文章目录 mkvirtualenv (--python=版本路径\python.exe) Ten

删除虚拟环境
rmvirtualenv venv

 

安装scrapy 需要依赖一个文件   网址在  https://www.lfd.uci.edu/~gohlke/pythonlibs/  

3.5 的Python是 Twisted-17.9.0-cp35-cp35m-win_amd32.whl      (注意 python版本32就下 32) 

 mkvirtualenv   xxx虚拟名称 

查看虚拟环境 workon

进入指定的虚拟环境 workon XXX

 

新建工程 scrapy startproject Ten  ##(项目名称 Ten)
注意:

进入工程后创建项目 ##一定要 cd  Ten
scrapy genspider jobbole(项目名称)   blog.jobbole.com(网站名称)


scrapy crawl jobbole ( 会依赖包 pip install pypiwin32)

 


 

xpath 语法 

 

 

 

 



\Ten>scrapy shell http://web.jobbole.com/94286/     ##在虚拟Python运行 命令 后面加你所需要测试的网页 



在 cmd 虚拟机命令里

>>> title = response.xpath('//div[@class="entry-header"]/h1/text()')
>>> title
[<Selector xpath='//div[@class="entry-header"]/h1/text()' data='用 JavaScript

写 MPEG1 解码器'>]
>>>


>>> title.extract()
['用 JavaScript 编写 MPEG1 解码器']
>>> ###提取宿主


当class内容中有多个 值的时候 contains

 

 

 


 

运用 xpath 的内置方法 例 >>> response.xpath('//span[contains(@class,"vote-post-up")]')      ###class后面是 , 

>>> response.xpath('//span[contains(@class,"vote-post-up")]/h10/text()').extract()[0]   ##点赞数思路



extract_first()              ## extract()用此方法可能不存在,, 如用前者 不存在会返回NONE  也可以自定义不存在返回的值 

 


 

  重复 学习 CSS

>>> aa = response.css('#archive .floated-thumb .post-thumb a::attr(href)').extra
ct()    

 

 

 

 

转载于:https://www.cnblogs.com/th-lyc/p/8733407.html


http://www.niftyadmin.cn/n/1789659.html

相关文章

TabHost

文章一&#xff1a;点击打开链接 文章二&#xff1a;点击打开链接 文章三&#xff1a;点击打开链接

关于浮动和BFC的理解

遇到过很多次关于 左边图片右边文字&#xff0c;文字环绕图片 || 防止文字&#xff08;或其他元素&#xff09;环绕 的问题&#xff0c;今天给自己做一个小小的总结。 浮动根据官方的说法是&#xff1a;CSS 的 Float&#xff08;浮动&#xff09;&#xff0c;会使元素向左或向…

232 Implement Queue using Stacks 用栈来实现队列

使用栈来实现队列的如下操作&#xff1a; push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。注意: 你只能使用标准的栈操作-- 也就是只有push to top, peek/pop from top, size, 和 is empty 操…

FragmentTabHost

虽然经常使用FragmentTabHost却一直不太了解其内部原理&#xff0c;今天稍微看了一下源码&#xff0c;总结一下&#xff0c;后续再慢慢完善&#xff0c;如果有理解不对的地方&#xff0c;烦请留言告知&#xff01; 一、FragmentTabHost的使用方式 1、编写布局xml 2、tabHost…

下拉刷新必备技能

转自github&#xff1a;https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh Ultra Pull To Refresh 这是现在已经停止维护的下拉刷新项目的替代方案。继承于ViewGroup可以包含任何View。功能比SwipeRefreshLayout强大。 使用起来非常简单。良好的设计&#xff0c;如果…

网页引用Font Awesome图标

首先引入 方法一&#xff1a;将以下代码粘贴到网页HTML代码的 <head> 部分.[html] view plaincopy <link href"//netdna.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css" rel"stylesheet"> 方法二&#xff1a;复制整个 font-…

Android样式的开发:drawable汇总篇

Android样式的开发:drawable汇总篇 本文转自&#xff1a;点击打开链接微信订阅号&#xff1a;keeganlee_meAndroid样式的开发:shape篇 Android样式的开发:selector篇 Android样式的开发:layer-list篇 Android样式的开发:drawable汇总篇 Android样式的开发:View Animation篇 And…

2013-2014 指导2014届毕业生8名(48)

2013-2014 指导2014届毕业生8名(48) 余水枚: 浅谈高考数学选择填空解题策略 熊艳演: 数学高考考题研究 舒慧: 浅谈导数在中学数学中的应用 郑碧娟: 中学数学概念教学的研究 刘赣贞: 浅谈黎曼积分与勒贝格积分对比 陈欣: 不等式的若干证明方法 李蘅芳: 微积分及其应用转载于:htt…