美文网首页
突发奇想地总结2.xpath2018-11-02

突发奇想地总结2.xpath2018-11-02

作者: 研小生 | 来源:发表于2018-11-02 09:07 被阅读0次

主要是循环节的使用,复制html改为了复制xpath,

  1. 出现这种明显带有分隔符性的要素,


    image.png

    程序当中,在整体处,即红圈处,加[0]的原因。

name=info.xpath('div[2]/p[2]/span/text()')[0]   #[0]为什么要加?
name1=name.split('-')[0]
name2 = name.split('-')[1]
image.png

2.在 后面加[0],区别就是在下方显示的是否带有[]符号


image.png

关于灰色部分,还需弄清楚原因


image.png
  1. 存取需要像之前正则一样,重新定义函数
    未存取定义函数之前
import requests
from lxml import etree

headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
}
url='https://xiaoyuan.zhaopin.com/full/industry/0/0_0_0_0_-1_0_1_0'

res = requests.get(url, headers=headers)
html = etree.HTML(res.text)
infos = html.xpath('//ul[@class="searchResultListUl"]/li')
for info in infos:
    # rank_1=info.xpath('span[3]')[0]
    # rank=rank_1.xpath('string(.)').strip()
    name=info.xpath('div[2]/p[2]/span/text()')[0]   #[0]为什么要加?
    name1=name.split('-')[0]
    name2 = name.split('-')[1]
    job=info.xpath('div[2]/p[1]/a/text()')[0]
    place=info.xpath('div[2]/p[3]/span[1]/span/em/text()')[0]
    job_type=info.xpath('div[2]/p[4]/span[4]/span/em/text()')
    print(name1,name2,job,place,job_type)

存取定义函数之后

  1. 正则定义函数之后


    image.png

    xpath定义函数之后


    image.png
  2. 完善之后完整代码
import requests
from lxml import etree
import csv

headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
}
url='https://xiaoyuan.zhaopin.com/full/industry/0/0_0_0_0_-1_0_1_0'

def get_info(url):
    res = requests.get(url, headers=headers)
    html = etree.HTML(res.text)
    infos = html.xpath('//ul[@class="searchResultListUl"]/li')
    for info in infos:
        # rank_1=info.xpath('span[3]')[0]
        # rank=rank_1.xpath('string(.)').strip()
        name=info.xpath('div[2]/p[2]/span/text()')[0]   #[0]为什么要加?
        name1=name.split('-')[0]
        name2 = name.split('-')[1]
        job=info.xpath('div[2]/p[1]/a/text()')[0]
        place=info.xpath('div[2]/p[3]/span[1]/span/em/text()')[0]
        job_type=info.xpath('div[2]/p[4]/span[4]/span/em/text()')[0]
        print(name1,name2,job,place,job_type)

if __name__ == '__main__':
    fp = open('C:/Users/秦振凯/Desktop/text2.csv', 'w', encoding='utf-8', newline='')
    writer = csv.writer(fp)
    writer.writerow(['name1', 'name2','job','place','job_type'])
    urls = ['https://xiaoyuan.zhaopin.com/full/industry/0/0_0_0_0_-1_0_{}_0'.format(str(i)) for i in range(0,5)]
    for url in urls:
        get_info(url)

相关文章

  • 突发奇想地总结2.xpath2018-11-02

    主要是循环节的使用,复制html改为了复制xpath, 出现这种明显带有分隔符性的要素,image.png程序当中...

  • 突发奇想地总结1.正则2018-11-01

    https://xiaoyuan.zhaopin.com/full/jobs直接复制审查的内容,或者html 我们...

  • 第一周周总结-2019

    忽然突发奇想,2019年,做周总结。之所以这样,是因为日总结好像每天都有在写,生活的,工作的,都能找到痕迹,另外如...

  • 无卫生打扫周活动总结

    “无卫生打扫周”活动总结 李林鹏 具体的活动是突发奇想的,倒也不是空...

  • 千里之行,始于足下

    针对写作: 1、每天仍坚持写日记; 2、每周写一篇简书:主要总结职场经历,人生感触,突发奇想等。 3、每个月总结出...

  • 假如教我的儿女做理财

    突发奇想的想到,如何教自己的儿女做理财呢。总结了自己一路走来的历程给他们看看。 一 记账 使用记账工具,每周末总结...

  • 写总结就像在写情书

    前两天写了篇《写总结就像在写遗书》,有朋友突发奇想,说,为什么不是“写总结就像在写情书”,当时就得甚妙。 因为人要...

  • 玩doodle Jump有感

    玩里面的足球模式,怪兽都是不同国家的代表,身上颜色也是国旗,于是突发奇想总结了一下:

  • 与狼为伍《与什么样子人一起学习什么》

    突然,突发奇想感觉有好多点子和感悟,如果没有去总结,就不会有更多的体会。而,书写就是最好总结过程。文章没有过深...

  • 张瑶的2018个人年度总结

    突发奇想总结一下过去这一年 2018农历年一年总结就此开始!!!鼓掌(^V^) 清楚的记得2018年是从刘昊然开始...

网友评论

      本文标题:突发奇想地总结2.xpath2018-11-02

      本文链接:https://www.haomeiwen.com/subject/iysxxqtx.html