xpath

        li_category = response.xpath("//div[@class='r-name']")    <div class="r-name"><div>
li_category = response.xpath("//div[contains(@class, 'r-name')]") <div class="r-name a b"><div> 包含'r-name'的所有div
     li_category = response.xpath("//a[text()='下一页']/@href").extract_first()  文本 = ’下一页‘的 a 标签的 href属性
     li_category = response.xpath("//a[text()='关键字:']/../li/text()").extract_first()  .. 父级

响应的同类数据但是格式不同,比如

   // category1 有a标签
   <div class="a">
<a href="">aaaa</a>
</div>
// category2 没有a标签
<div class="a">
aaaa
</div>

  此时取文本可以这样取

response.xpath("//div[@class='a']//text()").extract().strip()

响应的同类数据但是格式不同,比如

    <div class='a'>
<a href="">aaaa</a>
</div> <div class='a'>
<a href="">aaaa2</a>
<a href="">aaaa1</a>
</div>
此时取文本可以这样取
response.xpath("//div[@class='a']/a/text").extract()

完善url

import request, urllib

a = 'http://www.xxx.com?ss=1'
b = '?kw=22'
res = urllib.parse.urljoin(a, b) # parse需要与 request一起使用,框架中一般都有request
print(res) # http://www.xxx.com?kw=22

xpath, urllib的更多相关文章

  1. 在python3下使用requests,xpath,urllib爬取不得姐网站相关视频爬虫源代码

    #coding=utf-8 from lxml import etreeimport requestsimport urllibimport os # 获取url的html等内容def getHtml ...

  2. Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析

    加速IE浏览器自动化执行效率:Selenium自动化中DOM,XPATH,CSS定位Web页面对象的优劣性分析 1.技术背景       在Web应用中,用户通过键盘在输入框中输入值和鼠标点击按钮,链 ...

  3. 爬虫神器XPath,程序员带你免费获取周星驰等明星热门电影

    本教程由"做全栈攻城狮"原创首发,本人大学生一枚平时还需要上课,但尽量每日更新文章教程.一方面把我所习得的知识分享出来,希望能对初学者有所帮助.另一方面总结自己所学,以备以后查看. ...

  4. python爬虫数据解析的四种不同选择器Xpath,Beautiful Soup,pyquery,re

    这里主要是做一个关于数据爬取以后的数据解析功能的整合,方便查阅,以防混淆 主要讲到的技术有Xpath,BeautifulSoup,PyQuery,re(正则) 首先举出两个作示例的代码,方便后面举例 ...

  5. 爬取房价信息并制作成柱状图XPath,pyecharts

    以长沙楼盘为例,看一下它的房价情况如何url = https://cs.newhouse.fang.com/house/s/b91/ 一.页面 二.分析页面源代码 我们要获得的数据就是名字和价格,先来 ...

  6. 初学XPath,其实很简单

    XPath 是一门在 XML 文档中查找信息的语言.XPath 用于在 XML 文档中通过元素和属性进行导航. (我的理解:XPath 就是一个用来查找xml节点的路径语言,一个路径字符串语法) XM ...

  7. java中的xpath,读取xml文档。

    1,入门 XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言. XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力.起初 X ...

  8. JavaScript 【跨浏览器XPath,做个兼容】

    IE的Xpath 获取单一节点 var xmlDom = getXMLDOM(xmlStr);//调用之前写好的方法获得XMLDOM对象 // var node = xmlDom.selectSing ...

  9. Python+Selenium 利用ID,XPath,tag name,link text,partial link text,class name,css,name定位元素

    使用firefox浏览器,查看页面元素,我们以“百度网页”为示例 一.ID定位元素    利用find_element_by_id()方法来定位网页元素对象 ①.定位百度首页,输入框的元素 ②.编写示 ...

随机推荐

  1. zoj 1649 bfs

    Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is described as a N * M ...

  2. poi 工具类

    <!--POI--> <dependency> <groupId>org.apache.poi</groupId> <artifactId> ...

  3. robot framework关键词记录单(更新中)

    1.select Radio Button groupname  value 选择单选按钮 A)适用于input的html单选框,属性中包含name以及value如:Select Radio Butt ...

  4. C51单片机_day_01(定时器和中断系统)

                c51单片机 51单片机是控制电路系统的开关,当然芯片就是51芯片,现在随着科技的发展,也是出了很多,功能更多,更全的芯片. 51是用c语言做为程序编程的语言 ——我对基本基础 ...

  5. 个人简历html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. MySQL必知必会第十一章-

    使用数据处理函数 大多数SQL支持以下类型的函数: 1> 文本函数:用于处理文本串(删除或填充值,转换值为大写或小写) 2> 数值函数:用于在数值数据上进行算术操作(返回绝对值,进行代数运 ...

  7. FirewallD 快速使用文档

    FirewallD简介 FirewallD是CentOS7系列上代替iptables管理netfilter的配置工具,提供图形化和命令行,使用python开发(新版中计划使用c++重写),提供图形化和 ...

  8. Java使用算数运算符实现两个整数互换

    有很简单的方法可以实现,不过还是用一步一个脚印的方法来试试 首先分析一下流程 这里有两个变量. int a = 10,b = 40; //此时 a 为10,b 为40 然后我们开始走路,在不依靠第三者 ...

  9. 通过excel创建表

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  10. vim汇总

    跳到100行 100gg :100