一起游 手游攻略 软件教程 双卡移动强机 HTC T528t报价仅2699元,双卡双待移动

双卡移动强机 HTC T528t报价仅2699元,双卡双待移动

时间: 来源:互联网 浏览:0

htc t528w线刷官方ruu包的教程

【技术教程】我不小心把朋友的htc t528w变砖了。手机进不了系统,只能闪回官方的ruu包。所以我网上整理了一份关于如何刷官方ruu的详细教程。你可以看一下。我想有很多像我一样的新手需要使用这个教程。你可以参考一下。我会尽量说得更详细,让大家都能理解,也更容易操作。

一:准备工作:1:手机必须能够使用USB数据线连接电脑。由于是有线闪光灯,所以需要数据线。

2:检查电脑并确保电脑上安装了HTC T528w USB驱动程序。

2:下载ruu flash包,下载后放到电脑桌面上,下面会用到。

二:htc t528w线刷ruu的步骤:1:关闭手机,然后按住手机音量减键和电源键进入HBOOT模式,然后按音量键选择FASTBOOT,然后按电源键确认并进入FASTBOOT界面。

2:然后检查手机是否与数据线连接。连接USB线后,手机会显示fastboot USB,如下图。只是不要在这个界面中移动。接下来就是在电脑上进行操作了。

3:然后在电脑上运行上面下载的exe格式的ruu包,然后双击运行。

4:在欢迎页面上,单击“下一步”开始RUU 安装。

5:检查对话框中列出的说明,确认您已按照要求进行操作。单击“下一步”继续。

6:将显示一条消息,指示该工具正在验证并获取有关Android 手机的信息以准备更新。等待此验证过程完成。

7:验证完成后,会显示当前Android手机的信息,点击更新继续。

8:下方会显示Android手机信息、当前镜像版本和新镜像更新版本信息。如果您确定要安装新的RUU,请单击“下一步”继续。

9:将显示一条确认消息,指示在Android 手机上安装必要的文件(包括无线电模块映像)需要多长时间。单击“下一步”开始更新。更新过程中,屏幕上会显示变化的进度条。

注意:更新过程中进度条可能会停止移动。这是正常现象,因为RUU 会自动调整以完成更新。

10:如果显示如下画面,则表示RUU更新已完成。单击结束退出该工具。

11:至此,刷ruu完成。

彻底搞懂Scrapy的中间件

彻底了解Scrapy的中间件(一):https://www.cnblogs.com/xieqiankun/p/know_middleware_of_scrapy_1.html

彻底理解Scrapy的中间件(二):https://www.cnblogs.com/xieqiankun/p/know_middleware_of_scrapy_2.html

彻底理解Scrapy的中间件(三):https://www.cnblogs.com/xieqiankun/p/know_middleware_of_scrapy_3.html

【Scrapy使用技巧】如何使用Scrapy

捕捉

并处理各种异常

:https://blog.csdn.net/sc_lilei/article/details/80702449

重写scrapy中间件RetryMiddleware:

https://blog.csdn.net/qq_33854211/article/details/78535963

中间件是Scrapy中的核心概念。使用中间件,您可以在爬虫请求发起前或请求返回后自定义数据,从而开发出适应不同情况的爬虫。

中文名称“中间件”与上一章提到的“中间人”仅一字之差。他们做的事情非常相似。中间件和中间人都可以中途劫持数据,进行一些修改,然后将数据传递出去。不同之处在于,中间件是开发人员主动添加的组件,而中间件是被动组件,通常是恶意添加的。中间件主要用于辅助开发,而中间人则多用于窃取、伪造甚至攻击数据。

Scrapy中有两种中间件:下载器中间件和蜘蛛中间件。

在Scrapy的官方文档中,下载器中间件的解释如下。

Downloader中间件是Scrapy请求/响应处理之间的一个钩子框架。它是一个轻量级的低级系统,用于全局修改Scrapy的请求和响应。

这个介绍看起来很绕口,但其实可以用通俗易懂的术语来表达:更改代理IP、更改Cookies、更改User-Agent、自动重试。

如果根本没有中间件,爬虫流程如下图所示。

使用中间件后,爬虫流程如下图所示。

使用Scrapy 设置代理的终极指南

:https://zhuanlan.zhihu.com/p/79067223

Scrapy切换代理并使用代理重新请求特定的响应状态码。

HttpProxyMiddleware(HTTP代理中间件):https://github.com/kohn/HttpProxyMiddleware

scrapy爬虫的自动代理中间件:https://github.com/cocoakekeyu/autoproxy

为了获得免费代理,我们主要关注来自中国大陆的高空代理:https://github.com/kohn/HttpProxyMiddleware/blob/master/fetch_free_proxyes.py

scrapy爬虫代理——使用crawlera神器,无需寻找代理IP:http://blog.csdn.net/xiao4816/article/details/50650075

在爬虫开发中,更改代理IP是很常见的。有时您需要为每次访问随机选择一个代理IP。

中间件本身是一个Python类,但是爬虫每次访问网站之前都必须“通过”这个类。它可以将请求更改为新的代理IP,从而可以动态更改代理。

创建scrapy项目:

scrapy startproject 工程名创建Scrapy项目后(这里创建的项目名为

高级蜘蛛

),项目文件夹下会有一个middlewares.py文件。打开后内容如下图:

Scrapy自动生成的文件名为middlewares.py。名字后面的s代表复数,表示这个文件中可以放置很多中间件。

middlewares.py中有2个Python类,每个类代表一个中间件,代码如下:

可以看到,自动生成的middlewares.py有2个中间件

Advancespider蜘蛛中间件

代表爬虫中间件。 (在《深入理解Scrapy的中间件(三)》中会有讲解。)

AdvancespiderDownloader中间件

代表下载器中间件。

通过查看Scrapy源码,我们可以发现中间件只有两种:爬虫中间件和下载器中间件。

官方中间件文档:https://doc.scrapy.org/en/latest/topics/downloader-middleware.html

在middlewares.py中添加以下代码(可以直接修改

AdvancespiderDownloaderMiddleware ,也可以单独写一个类。这是一个单独的Python 类作为中间件):

插图:

示例代码:

修改请求的代理,需要在请求的meta中添加一个Key为代理,Value为代理IP的项。

由于使用了random和settings,因此需要在middlewares.py开头导入它们:

下载器中间件中有一个名为process_request() 的方法。该方法中的代码会在每个爬虫访问网页之前执行。

打开settings.py,首先添加几个代理IP:

应该注意的是,代理IP有多种类型。首先需要判断是HTTP类型的代理IP还是HTTPS类型的代理IP。

如果使用不当,将无法访问。

中间件编写完成后,需要在settings.py中启动。在settings.py中找到以下注释语句:

双卡移动强机 HTC T528t报价仅2699元,双卡双待移动

取消注释并修改以引用ProxyMiddleware。修改为:

这实际上是一本字典。字典的Key是用点分隔的中间件路径。下面的数字表示这个中间件的顺序。由于中间件是顺序运行的,如果后一个中间件依赖于前一个中间件,那么中间件的顺序就很关键。

如何判断下面的数字怎么写?最简单的办法就是从543开始,逐渐加1,这样一般不会有大问题。如果想让中间件更加专业,就需要知道Scrapy自带的中间件的顺序,如下图:

数字越小,首先执行中间件。比如Scrapy自带的第一个中间件RobotsTxtMiddleware,就是首先检查settings.py中ROBOTSTXT_OBEY的配置是True还是False。如果为True,则表示必须遵守Robots.txt协议。会检查要访问的URL是否可以访问。如果不允许访问,那么请求将被直接取消。与该请求相关的所有后续操作都无需继续。

开发者定义的中间件会按顺序插入到Scrapy自己的中间件中。爬虫会按照从100到900的顺序运行所有中间件。直到所有中间件都运行完毕,或者遇到某个中间件而取消请求。

Scrapy其实自带了UA中间件(UserAgentMiddleware)、代理中间件(HttpProxyMiddleware)和重试中间件(RetryMiddleware)。因此,“原则上”来说,如果你想自己开发这三个中间件,需要先禁用Scrapy自带的这三个中间件。要禁用Scrapy的中间件,需要在settings.py中将该中间件的顺序设置为None:

为什么说“原则上”应该禁用它?首先查看Scrapy自带的代理中间件源码,如下图:

从上图可以看出,如果Scrapy发现请求已经被设置为代理,那么中间件将不做任何事情,直接返回。因此,虽然Scrapy自带的代理中间件的阶数为750,大于开发者定义的代理中间件的543阶数,但不会覆盖开发者定义的代理信息。

所以即使不禁用系统自带的这个代理中间件也没有关系。完全激活自定义中间件的settings.py部分如下图所示。

配置完成后,运行爬虫,爬虫会在每次请求之前随机设置一个代理。

要测试代理中间件的运行,可以使用以下练习页面:http://exercise.kingname.info/exercise_middleware_ip

该页面会返回爬虫的IP地址,直接在网页上打开,如下图。

本练习页面支持翻页功能。在URL后添加“/页数”即可翻页。

例如,第100页的URL为:http://exercise.kingname.info/exercise_middleware_ip/100

使用代理中间件替换每个请求的代理的运行结果如下图所示。

代理中间件的可用代理列表不必写在settings.py中。它们也可以写入数据库或Redis。一个可行的自动更换代理的爬虫系统应该具备以下三个功能。

有一个小型爬虫ProxySpider,可以从各大代理网站爬取免费代理并进行验证,并将可用的代理IP保存到数据库中。

ProxyMiddlerware的process_request中,每次都会从数据库中随机选择一个代理IP地址使用。

定期验证数据库中的无效代理并及时删除。由于免费代理极易失败,如果您有一定的开发预算,建议购买专业代理机构的代理服务,快速且稳定。

开发UA中间件与开发代理中间件几乎相同。它还从settings.py中配置的UA列表中随机选择一个项目并将其添加到请求标头中。代码如下:

比IP更好的是UA不会出现失败的问题,所以只要收集几十个UA就可以一直使用。常见的UA如下:

配置UA后,在settings.py下载器中间件中激活它。

使用UA练习页面来验证UA每次都是不同的。

练习页面地址为:http://exercise.kingname.info/exercise_middleware_ua

UA练习页面与坐席练习页面相同,可以无限制翻阅。

爬虫代码示例:

运行结果如下图所示:

对于需要登录的网站,cookie可以用来让你保持登录状态。所以如果你单独编写一个小程序,使用Selenium用不同的账户不断登录网站,你就可以得到很多不同的cookie。由于cookie本质上是一段文本,因此可以将这段文本放置在Redis中。这样,当Scrapy爬虫请求网页时,就可以从Redis中读取Cookie并由爬虫替换。这样爬虫就可以一直保持登录状态。

以下面的练习页面为例:http://exercise.kingname.info/exercise_login_success

如果直接用Scrapy访问,就会得到登录界面的源码,如下图所示。

现在,使用中间件,您可以打印出登录后将显示的内容,而无需更改loginSpider.py中的代码。

首先开发一个小程序通过Selenium登录这个页面,并将网站返回的header保存到Redis中。这个小程序的代码如下所示。

这段代码的目的是利用Selenium和ChromeDriver填写用户名和密码,实现登录练习页面,然后将登录后的cookie转换为JSON格式字符串并保存到Redis中。

接下来,编写另一个中间件来从Redis 读取Cookie 并将此Cookie 用于Scrapy:

设置好这个中间件后,爬虫中的代码无需任何修改就可以成功获取登录后才能看到的HTML,如图12-12所示。

如果某个网站有100个账户,那么单独编写一个程序,使用Selenium和ChromeDriver或者Selenium和PhantomJS不断登录,获取cookie,并将cookie存储在Redis中。爬虫每次访问都会从Redis中读取新的cookie进行爬行,大大降低了被网站发现或屏蔽的可能性。

该方法不仅适用于登录,也适用于处理验证码。

本文到此结束。下一篇文章我们将介绍如何在下载器中间件中集成Selenium来重试请求和处理异常。

以上介绍了下载器中间件的一些简单应用。

下面我们通过案例讲一下如何使用下载器中间件集成Selenium、重试以及处理请求异常。

对于一些麻烦的异步加载页面,手动查找其后端API可能成本太高。在这种情况下,您可以使用Selenium和ChromeDriver或Selenium和PhantomJS来渲染网页。

这在前面的章节中已经介绍过。那么,如何将Scrapy与Selenium结合起来呢?这时候又用到了中间件。

使用以下代码创建SeleniumMiddleware:

这个中间件的功能是使用ChromeDriver首先渲染名为“seleniumSpider”的爬虫请求的URL,然后使用返回的渲染的HTML代码构造一个Response对象。如果是另一个爬虫,它什么也不做。上面的代码中,等待页面渲染完成是通过time.sleep(2)实现的。当然,读者也可以使用上一章提到的等待元素出现的方法。

通过这个中间件,你可以像访问普通网页一样直接处理需要异步加载的页面,如下图所示。

爬虫运行过程中,可能会因为网络问题或网站反爬虫机制生效等原因导致部分请求失败。在某些情况下,少量数据丢失并不重要。例如,在数亿次请求中,如果某个请求失败十几次,则损失是最小的,无需重试。但也有一些情况,每个请求都很关键,不能容忍任何失败。此时就需要使用中间件来重试。

有些网站的反爬虫机制被触发,会自动将请求重定向到xxx/404.html页面。那么如果发现这样的自动重定向,就不需要让这个请求返回的内容进入数据提取逻辑,而应该直接丢弃或者重试。

另一种情况,网站的请求参数中有一项,键为日期,值为发起请求当天的日期或请求前一天的日期。例如今天是“2017-08-10”,但该参数的值必须是今天上午10点之前的“2017-08-09”,10点之后才可以使用“2017-08-10”。否则网站不会返回正确的结果,而是返回“参数错误”四个字。不过,这个日期切换的时间点会受到其他参数的影响。有可能使用“2017-08-10”可以成功访问第一个请求,但使用“2017-08-09”只能访问第二个请求。在这种情况下,与其花费大量时间和精力跟踪时间切换点的变化模式,不如简单地尝试一下今天,然后再尝试一下昨天的日期。反正最多两次,其中一个永远是正确的。

使用重试中间件可以轻松解决以上两种场景。

打开练习页面

该页面实现了翻页逻辑。可以翻上一页、下一页,也可以直接跳转到任意页面,如下图所示。

现在我们需要获取第1页到第9页的内容。利用上一章学到的知识,我们可以很容易地通过Chrome浏览器的开发者工具发现,翻页实际上是一个POST请求。提交的参数为“date”,其值为日期“2017-08-12”,如下图所示。

使用Scrapy编写爬虫,获取1到9页面的内容,运行结果如下图所示。

从上图可以看到,第5页没有正常获取,返回结果是参数错误。于是我看了一下网页,发现第5页请求body中的日期对应的日期是“2017-08-11”,如下图所示。

如果您对其进行足够频繁且足够长时间的测试,您将发现以下内容。

在同一时间点,不同页面提交的参数中,date对应的日期可能是今天,也可能是昨天。

对于同一页码不同时间提交的参数,date对应的日期可能是今天,也可能是昨天。

由于日期要么是今天,要么是昨天,编写一个重试中间件是解决这种情况最简单、粗暴、有效的方法。中间件的代码如下图所示。

该中间件仅对名为“middlewareSpider”的爬虫有用。由于middlewareSpider爬虫默认使用“今天”的日期,如果网站返回“参数错误”,那么正确的日期一定是昨天。所以在这个中间件中,第119行直接用昨天的日期替换了原始请求的body,而这个请求的其他参数保持不变。让这个中间件生效后,爬虫可以成功爬取第5页,如下图所示。

爬虫本身的代码和数据提取部分完全没有修改。如果不看中间件代码,你无法判断爬虫在第5页进行了重试。

除了查看网站返回的内容外,还可以查看返回内容对应的URL。将上述练习页面后台URL中的第一个参数“para”更改为404,暂时禁用重试中间件,然后再次运行爬虫。运行结果如下图所示。

此时,对于参数不正确的请求,网站会自动重定向到以下URL对应的页面:

由于Scrapy有自己的自动URL去重机制,虽然3、6、7页面会自动重定向到404页面,但爬虫只会爬取404页面一次,剩下的两个404页面会被自动过滤掉。

对于这种情况,可以通过重试中间件中判断返回的URL来解决,如下图12-21所示。

代码第115行,判断是否自动重定向到404页面,或者是否返回“参数错误”。如果都不是,说明这次请求看起来正常,直接返回响应,交给后续中间件处理。如果重定向到404页面,或者返回“参数错误”,则进入重试逻辑。如果返回“参数错误”,则转到第126行,直接替换原请求的body,重新发起请求。

如果自动跳转到404页面,有一点需要特别注意:此时的请求对象对应的是向404页面发起的GET请求,而不是原来向练习页面后端发起的请求。因此,在重构新的请求时,必须重新更改URL、body、请求方法和Headers。

由于request对应的是对404页面的请求,因此request.url对应的URL就是404页面的URL。因此,如果你想知道调整前的URL,可以使用下面的代码:

该值对应于一个列表。请求自动跳转了好几次,这个列表里就有好几个URL。这些URL 按跳转顺序附加到列表中。由于本例中只有一次跳转,因此可以直接读取下标为0的元素,即原始URL。

双卡移动强机 HTC T528t报价仅2699元,双卡双待移动

重新激活重试中间件,无需更改爬虫数据抓取部分的代码。直接运行后,可以正确获取第1页到第9页的全部内容,如下图所示。

默认情况下,如果请求失败,Scrapy会立即就地重试,如果失败则再重试,如此类推3次。如果三次失败,则放弃该请求。这种重试逻辑存在一些缺陷。以代理IP为例。代理不稳定,尤其是免费代理。 10 个中只有3 个可用。现在市场上有一些付费代理IP提供商。购买他们的服务后,他们会直接提供一个固定的URL。通过将此URL设置为Scrapy的代理,您可以每分钟自动从不同的IP访问该网站。如果其中一个IP 出现故障,需要一分钟时间才会更换新的IP。在这种场景下,Scrapy自身的重试逻辑会导致3次重试失败。

在这种场景下,如果可以立即更换代理,就立即更换;如果无法立即更改代理,更好的解决方案是延迟并重试。这可以使用Scrapy_redis 来实现。爬虫的请求来自Redis,请求失败后的URL被放回到Redis的末尾。一旦一个请求在原地重试3次后失败,就会被放在Redis的末尾,这样Scrapy需要消耗掉Redis列表前面的所有请求,然后才能重试之前失败的请求。这为更改IP 提供了足够的时间。

重新打开代理中间件,这次故意设置了一个有问题的代理,这样就可以在Scrapy控制台看到打印出的错误信息,如下图所示。

从上图中可以看到Scrapy自动重试的过程。因为代理有问题,最终会抛出一个装箱异常,表示TCP 超时。如果中间件捕获到这个异常,可以提前更换代理或者重试。这里我们以更换代理为例。首先根据上图方框内的内容导入TCPTimeOutError异常:

修改之前开发的重试中间件,添加一个process_exception()方法。该方法接收三个参数,分别是request、exception和spider,如下图所示。

process_exception()方法仅对名为“exceptionSpider”的爬虫生效。如果请求遇到TCPTimeOutError,则首先调用remove_broken_proxy()方法来删除无效的代理IP。

然后返回这个请求对象request。返回以后,Scrapy会重新调度这个请求,就像它第一次调度一样。由于原来的ProxyMiddleware依然在工作,于是它就会再一次给这个请求更换代理IP。又由于刚才已经移除了失效的代理IP,所以ProxyMiddleware会从剩下的代理IP里面随机找一个来给这个请求换上。 特别提醒:图片中的remove_broken_proxy() 函数体里面写的是 pass,但是在实际开发过程中,读者可根据实际情况实现这个方法,写出移除失效代理的具体逻辑。 能在中间件中实现的功能,都能通过直接把代码写到爬虫中实现。使用中间件的好处在于,它可以把数据爬取和其他操作分开。在爬虫的代码里面专心写数据爬取的代码;在中间件里面专心写突破反爬虫、登录、重试和渲染AJAX等操作。 对团队来说,这种写法能实现多人同时开发,提高开发效率;对个人来说,写爬虫的时候不用考虑反爬虫、登录、验证码和异步加载等操作。另外,写中间件的时候不用考虑数据怎样提取。一段时间只做一件事,思路更清晰。 在前面两篇文章介绍了下载器中间件的使用,这篇文章将会介绍爬虫中间件(Spider Middleware)的使用。 爬虫中间件的用法与下载器中间件非常相似,只是它们的作用对象不同。下载器中间件的作用对象是请求request和返回response;爬虫中间件的作用对象是爬虫,更具体地来说,就是写在spiders文件夹下面的各个文件。它们的关系,在Scrapy的数据流图上可以很好地区分开来,如下图所示。 其中,4、5 表示下载器中间件,6、7 表示爬虫中间件。 爬虫中间件 会在以下几种情况被调用。 当运行到 yield scrapy.Request()或者 yield item 的时候,爬虫中间件的 process_spider_output()方法被调用。 当爬虫本身的代码出现了 Exception 的时候,爬虫中间件的 process_spider_exception()方法被调用。 当爬虫里面的某一个回调函数 parse_xxx()被调用之前,爬虫中间件的 process_spider_input()方法被调用。 当运行到 start_requests()的时候,爬虫中间件的 process_start_requests()方法被调用。 在爬虫中间件里面可以处理爬虫本身的异常。例如编写一个爬虫,爬取UA练习页面http://exercise.kingname.info/exercise_middleware_ua ,故意在爬虫中制造一个异常,如图12-26所示。 由于网站返回的只是一段普通的字符串,并不是 JSON 格式的字符串,因此使用 JSON去 解析,就一定会导致报错。这种报错和下载器中间件里面遇到的报错不一样。下载器中间件里面的报错一般是由于外部原因引起的,和代码层面无关。而现在的这种报错是由于代码本身的问题导致的,是代码写得不够周全引起的。 为了解决这个问题,除了仔细检查代码、考虑各种情况外,还可以通过开发爬虫中间件来跳过或者处理这种报错。在middlewares.py 中间编写一个类: 这个类仅仅起到记录 Log 的作用。在使用 JSON 解析网站返回内容出错的时候,将网站返回的内容打印出来。 process_spider_exception() 这个方法,它可以返回 None,也可以运行 yield item 语句或者像爬虫的代码一样,使用 yield scrapy.Request() 发起新的请求。如果运行了 yield item 或者 yield scrapy.Request(),程序就会绕过爬虫里面原有的代码。 例如,对于有异常的请求,不需要进行重试,但是需要记录是哪一个请求出现了异常,此时就可以在爬虫中间件里面检测异常,然后生成一个只包含标记的 item。还是以抓取 http://exercise.kingname.info/exercise_middleware_retry.html 这个练习页的内容为例,但是这一次不进行重试,只记录哪一页出现了问题。先看爬虫的代码,这一次在 meta 中把页数带上,如下图所示。 爬虫里面如果发现了参数错误,就使用 raise 这个关键字人工抛出一个自定义的异常。在实际爬虫开发中,读者也可以在某些地方故意不使用 try … except 捕获异常,而是让异常直接抛出。例如 XPath 匹配处理的结果,直接读里面的值,不用先判断列表是否为空。这样如果列表为空,就会被抛出一个 IndexError,于是就能让爬虫的流程进入到爬虫中间件的process_spider_exception() 中。

双卡移动强机 HTC T528t报价仅2699元,双卡双待移动

在 items.py 里面创建了一个 ErrorItem 来记录哪一页出现了问题,如下图所示。 接下来,在爬虫中间件中将出错的页面和当前时间存放到ErrorItem里面,并提交给pipeline,保存到MongoDB中,如下图所示。 这样就实现了记录错误页数的功能,方便在后面对错误原因进行分析。由于这里会把 item 提交给 pipeline,所以不要忘记在settings.py 里面打开 pipeline,并配置好 MongoDB。储存错误页数到 MongoDB 的代码如下图所示。 爬虫中间件的激活方式与下载器中间件非常相似,在 settings.py 中,在下载器中间件配置项的上面就是爬虫中间件的配置项,它默认也是被注释了的,解除注释,并把自定义的爬虫中间件添加进去即可,如下图所示。 Scrapy也有几个自带的爬虫中间件,它们的名字和顺序如下图所示。 下载器中间件的数字越小越接近 Scrapy 引擎,数字越大越接近爬虫。如果不能确定自己的自定义中间件应该靠近哪个方向,那么就在 500~700 之间选择最为妥当。 在爬虫中间件里面还有两个不太常用的方法, 分别为process_spider_input(response, spider)和process_spider_output(response, result, spider)。 process_spider_input(response, spider)在下载器中间件处理完成后,马上要进入某个回调函数parse_xxx()前调用。 process_spider_output(response, result, output)是在爬虫运行 yield item 或者 yield scrapy.Request() 的时候调用。在这个方法处理完成以后,数据如果是 item,就会被交给 pipeline;如果是请求,就会被交给调度器,然后下载器中间件才会开始运行。所以在这个方法里面可以进一步对 item 或者 请求 做一些修改。这个方法的参数 result 就是爬虫爬出来的 item 或者scrapy.Request()。由于 yield 得到的是一个生成器,生成器是可以迭代的,所以 result 也是可以迭代的,可以使用 for 循环来把它展开。 对 item 进行处理 或者对请求进行监控和修改:

htc t528d (one sc)刷ruu的教程

一:准备工作:1:手机必须能用usb数据线电脑,因为是线刷,所以必须要有数据线 2:检查一下电脑,确保电脑上已经安装htc t528d (one sc)的usb驱动了 3:下载ruu刷机包,(注意,要下载支持线刷的包)把ruu刷机包下载下来放到电脑桌面上就可以了,下面会用到。二:刷ruu的步骤:1:把手机关机,然后在关机状态下按住手机的 音量下键 和 电源键 进入HBOOT模式,然后按音量键选择FASTBOOT,然后按电源键确认,进入FASTBOOT界面 2:然后检查一下手机有没有用数据线连接好手机,连接好USB线后,你的手机会显示fastboot USB,如下图,在这个界面不要动就行了,后面就是在电脑上的操作了 3:接着在电脑上运行上面下载好的exe格式的ruu包,然后双击运行。 4:在欢迎页面,单击下一步开始 RUU 安装。 5:查看对话框中所列指示,确认已按要求操作。单击下一步继续。 6:将显示一条信息,表明工具正在验证和获取关于 Android 手机的信息,为更新作准备。等待此验证过程完成。 7:验证完成后,将显示关于 Android 手机的当前信息,单击更新继续。 8:下面将显示 Android 手机信息、关于当前映像版本以及新映像更新版本的信息。如果确定要安装新 RUU,请单击下一步继续。 9:将显示一条确认信息,表明在 Android 手机上安装必要文件 (包括无线电通讯模块映像) 所需时间。单击下一步开始更新。更新过程中,屏幕上会显示不停变化的进度条。 注:在更新过程中,进度条可能会停止移动。这是正常现象,因为 RUU 正在自动进行调整以完成更新。 10:如果显示以下画面,表示 RUU 更新已完成。单击结束退出工具。 11:至此,刷ruu完成。

用户评论

雪花ミ飞舞

2699的价格还蛮诱人的,就是不知道HTC现在的手機能否跟上其他品牌了? 听说T系列主要是为了性价比啊,希望能质量靠谱。

    有7位网友表示赞同!

回到你身边

双卡双待一直是手机的必要功能啊,可惜现在很多新款都不带了!这价位的安卓机子,性能如何呢?能不能流畅玩游戏啊?

    有10位网友表示赞同!

冷嘲热讽i

HTC T528t双卡移动这个配置还是不错的,可以一举两得,平时工作手机就用一个卡,另一个用来娱乐和社交吧! 随时随地办理事务也很方便。

    有13位网友表示赞同!

执妄

哎,HTC现在已经不是巅峰时期了,不过性价比高的机子还是要买的啊。这货是不是很适合日常使用?毕竟只玩游戏的话可以选择更强的型号啊。<br>

    有12位网友表示赞同!

娇眉恨

2699的价格买个双卡手机确实很划算,但是强机这个概念实在太模糊啦,希望能描述具体参数吧!我主要需要流畅用微信,会不会卡屏的问题呢?

    有16位网友表示赞同!

若他只爱我。

如果这价格还能支持移动网络的话,那真是香得很啊! 我现在正想要换个新手机,双卡双待的需求很高,HTC的品牌也算信得过,可以考虑一下。

    有10位网友表示赞同!

执念,爱

2699元的价位在现在的手机市场真的算挺高的了。如果T528t性能不佳的话,不如攒钱再买一部更加强大的旗舰机吧!

    有20位网友表示赞同!

喜欢梅西

双卡双待是我必须要有的功能,但是这价格感觉有点贵啊,性价比不高?有没有更便宜的推荐呀?希望HTC能够给用户带来更多惊喜。

    有5位网友表示赞同!

龙吟凤

以前HTC的手机的质量还是很好的,现在的配置怎么样呢?强机这个词太笼统了,能否详细说明一下硬件参数和处理器型号? 希望能像以前的HTC那样性能强大!

    有5位网友表示赞同!

淡抹丶悲伤

这价格买个双卡手机确实很划算,但是需要注意的是屏幕尺寸和材质,还有电池续航时间等问题。 这方面有没有什么具体介绍呢?

    有19位网友表示赞同!

自繩自縛

看到2699元的价格,第一反应就是这应该是一款预算定位较低的机型吧。希望HTC能够在技术上有所提升,别给用户带来不好的体验呀!

    有10位网友表示赞同!

◆残留德花瓣

想换个双卡手机,希望能支持移动网络,同时也能玩游戏、刷视频, 看看这款T528t能不能满足我的需求?价格还算可以接受的范围。

    有16位网友表示赞同!

何必锁我心

HTC现在的定位确实是在性价比上拿优势。这个T528t的价格很符合市场现状,如果性能足够的话,应该会比较受欢迎的!

    有14位网友表示赞同!

灬一抹丶苍白

双卡双待功能我一直很喜欢,方便了很多事。HTC的产品现在还行吧?这款手机的拍照效果怎么样呢?希望能拍出清晰的照片!

    有18位网友表示赞同!

冷青裳

2699元买一个强机HTC,其实性价比还是挺高的。但关键还是要看实际的使用体验,性能和功能是否符合我的需求!

    有18位网友表示赞同!

逾期不候

这个价格还蛮吸引人的,但是双卡移动强机这三个词语感觉有点过于营销化了。希望能看到更详细的参数配置和第三方评测结果。

    有16位网友表示赞同!

_心抽搐到严重畸形っ°

HTC T528t的价格确实很美丽,但对于一款手机来说,最重要的还是它的实际使用体验。希望这款手机能够带来惊喜!

    有20位网友表示赞同!

小清晰的声音

最近想换新机子了,这个T528t看了一下配置还算不错,双卡双待移动强机也符合我的需求。价格也不错,我会考虑入手看看!

    有6位网友表示赞同!

烟雨离殇

感觉HTC T528t这款手机是冲着性价比去的。如果能有更强的性能和更好的续航能力,那性价比会更高了!

    有10位网友表示赞同!

标题:双卡移动强机 HTC T528t报价仅2699元,双卡双待移动
链接:https://yqqlyw.com/news/rj/66175.html
版权:文章转载自网络,如有侵权,请联系删除!
资讯推荐
更多
做超声检查时,医生为什么要在患者肚子上涂粘粘的东西

做B超为什么要涂凝胶?在支付宝蚂蚁庄园每日一题中,2021年4月9日的问题是问做超声检查时,医生为什么要在患者肚

2026-01-23
小米mix fold有前置摄像头吗

小米mix fold有前置摄像头吗?作为小米的第一款折叠屏手机,这款手机可以说实话非常的强大,但是很多网友还是想要

2026-01-23
蚂蚁庄园4月10日答案最新

蚂蚁庄园4月10日答案最新是什么?在支付宝蚂蚁庄园每日一题中,你知道蚂蚁庄园2021年4月10日答案是什么吗?该怎么

2026-01-23
蚂蚁庄园4月13日答案最新

支付宝蚂蚁庄园今日答题答案是什么?在支付宝蚂蚁庄园每日一题中,每天都会刷新出现多个题目等待大家来回答,回答

2026-01-23