xpath案例 爬取58出租房源信息&解析下载图片数据&乱码问题

58二手房解析房源名称

from lxml import etree
import requests
url = ‘https://haikou.58.com/chuzu/j2/‘
headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Mobile Safari/537.36‘
}
parser = etree.HTMLParser(encoding=‘utf-8‘)
page_text = requests.get(url=url).text
tree = etree.HTML(page_text,parser=parser)
lis = tree.xpath(‘//ul[@class="house-list"]/li‘)
for li_item in lis:
    res=li_item.xpath(‘.//h2/a/text()‘) #注意 ./
    print(res[0].strip())


爬取彼岸图网图片

from lxml import etree
import requests
url = ‘http://pic.netbian.com/4kfengjing‘
headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Mobile Safari/537.36‘
}
parser = etree.HTMLParser(encoding=‘utf-8‘)
page_text = requests.get(url=url,headers=headers).text
tree = etree.HTML(page_text,parser=parser)
res = tree.xpath(‘//div[@class="slist"]//li/a/img/@src‘)
count=0
for url_item in res:
    full_url = "%s%s"%(‘http://pic.netbian.com/‘,url_item)
    res = requests.get(url=full_url).content
    with open(‘图片%s.jpg‘%count,‘wb‘)as f:
        f.write(res)
    count+=1


乱码问题:

  1.整体

    - response = requests.get(url=xxx,headers=xxx)

    -response.encoding = ‘utf-8‘

  2. 单独

      - xxx.encode(‘iso-8859-1‘).decode(‘gbk‘)    (通用处理中文乱码方案)

原文地址:https://www.cnblogs.com/Jnhnsnow/p/11612292.html

时间: 2024-10-08 03:10:05

xpath案例 爬取58出租房源信息&解析下载图片数据&乱码问题的相关文章

Python爬虫项目--爬取自如网房源信息

本次爬取自如网房源信息所用到的知识点: 1. requests get请求 2. lxml解析html 3. Xpath 4. MongoDB存储 正文 1.分析目标站点 1. url: http://hz.ziroom.com/z/nl/z3.html?p=2 的p参数控制分页 2. get请求 2.获取单页源码 1 # -*- coding: utf-8 -*- 2 import requests 3 import time 4 from requests.exceptions import

Python 2.7_利用xpath语法爬取豆瓣图书top250信息_20170129

大年初二,忙完家里一些事,顺带有人交流爬取豆瓣图书top250 1.构造urls列表 urls=['https://book.douban.com/top250?start={}'.format(str(i) for i in range(0, 226, 25))] 2.模块 requests获取网页源代码 lxml 解析网页 xpath提取 3.提取信息 4.可以封装成函数 此处没有封装调用 python代码: #coding:utf-8 import sys reload(sys) sys.

python3.6+BeautifulSoup4.2 爬取各类app应用信息并下载app包

---------------环境配置--------------- 1.在Windows操作系统下安装python-3.6.4-amd64.exe 2.配置环境变量 Path变量:如C:\Users\Administrator\AppData\Local\Programs\Python\Python36\ 打开cmd命令窗口,输入:python命令,可以进入python 编辑命令行,即可. 3.把beautifulsoup4-4.6.0.tar.gz解压后,放在Python36\目录下,在cm

python爬虫:找房助手V1.0-爬取58同城租房信息

1.用于爬取58上的租房信息,限成都,其他地方的,可以把网址改改: 2.这个爬虫有一点问题,就是没用多线程,因为我用了之后总是会报: 'module' object has no attribute '_strptime'这个奇怪的错误,挣扎了许久,放弃: 如有大神看到这篇帖子,希望可以指点一二,不胜感激,谢谢. 3.我本来打算做成EXE文件的,但是在中文处理方面总是乱码,需要进一步研究: 以下为代码: #!/usr/bin/python # -*- encoding:utf-8 -*- imp

利用Selenium爬取淘宝商品信息

一.  Selenium和PhantomJS介绍 Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样.由于这个性质,Selenium也是一个强大的网络数据采集工具,其可以让浏览器自动加载页面,这样,使用了异步加载技术的网页,也可获取其需要的数据. Selenium模块是Python的第三方库,可以通过pip进行安装: pip3 install selenium Selenium自己不带浏览器,需要配合第三方浏览器来使用.通过help命

requests+xpath+map爬取百度贴吧

1 # requests+xpath+map爬取百度贴吧 2 # 目标内容:跟帖用户名,跟帖内容,跟帖时间 3 # 分解: 4 # requests获取网页 5 # xpath提取内容 6 # map实现多线程爬虫 7 import requests 8 from requests.exceptions import RequestException 9 from lxml import etree 10 import json 11 from multiprocessing.dummy imp

[Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)

一. 文章介绍 前一篇文章"[python爬虫] Selenium爬取新浪微博内容及用户信息"简单讲述了如何爬取新浪微博手机端用户信息和微博信息. 用户信息:包括用户ID.用户名.微博数.粉丝数.关注数等. 微博信息:包括转发或原创.点赞数.转发数.评论数.发布时间.微博内容等. 它主要通过从文本txt中读取用户id,通过"URL+用户ID" 访问个人网站,如柳岩: http://weibo.cn/guangxianliuya 因为手机端数据相对精简简单,所以采用输

Node.js爬虫-爬取慕课网课程信息

第一次学习Node.js爬虫,所以这时一个简单的爬虫,Node.js的好处就是可以并发的执行 这个爬虫主要就是获取慕课网的课程信息,并把获得的信息存储到一个文件中,其中要用到cheerio库,它可以让我们方便的操作HTML,就像是用jQ一样 开始前,记得 npm install cheerio 为了能够并发的进行爬取,用到了Promise对象 //接受一个url爬取整个网页,返回一个Promise对象 function getPageAsync(url){ return new Promise(

[python爬虫] BeautifulSoup和Selenium对比爬取豆瓣Top250电影信息

这篇文章主要对比BeautifulSoup和Selenium爬取豆瓣Top250电影信息,两种方法从本质上都是一样的,都是通过分析网页的DOM树结构进行元素定位,再定向爬取具体的电影信息,通过代码的对比,你可以进一步加深Python爬虫的印象.同时,文章给出了我以前关于爬虫的基础知识介绍,方便新手进行学习.        总之,希望文章对你有所帮助,如果存在不错或者错误的地方,还请海涵~ 一. DOM树结构分析 豆瓣Top250电影网址:https://movie.douban.com/top2