b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

Python爬虫实战:使用Selenium抓取QQ空间好友说

电脑杂谈  发布时间:2019-07-26 23:09:09  来源:网络整理

空间人气软件_qq空间互踩软件_好空间 软件

发表于:2017-10-30 15:02 作者:周小董 来源:51Testing软件测试网采编

字体:推荐标签:软件测试工具PythonSelenium

前面我们接触到的好空间 软件,都是使用requests+BeautifulSoup组合对静态网页进行请求和数据解析,若是JS生成的内容,也介绍了通过寻找API借口来获取数据。

所谓死链,一句话就是“打不开的链接”,一样平常状态下所发生的死链是因为网页被删去、上海网站建设改版(原本旧url因为站点改版url发生了新的改变,上海网站建设改版后精确的url是改版后的链接,当用户输入原本的url地址时就是过错的链接因而该页面不存在)、过错或许是程序主动生成等缘故原由。每完成一个创造之树的分之就会相应的开启下一个技能,但是还会有一些大的任务(就是文字比较多的那些任务),比如钓鱼,比如用魔法指南针,前几次玩的时候就碰到了魔法指南针任务卡住的问题,因为这个魔法释放有距离限制,任务是要求用魔法指南针寻找一个最近的密室,但是附近的密室都被我在前期挖矿的时候发现了,结果直接导致这个任务失败,卡关了就,只能重开,然后先去边缘地区找矿藏(反正有传送门),这个魔法合成之后,要先释放一次,创造树才能继续发展,然后还会再出现一个任务,然你再放一次找密室,所以第一次放的时候,你可以不用去找,放了魔法就好,第二次的时候,再去找那个密室。它是互联网上得到资源地址和访问方法的一种表示,互联网上每一个网页或者资源都有自己的唯一url,没有任何两个不同的网页或者文件地址是相同的或者重复的,我们可以理解为这个url等于唯一访问地址,在浏览器里没有任何选择性,那么淘宝天猫上每一个产品都有自己的唯一url。

一、Selenium简介

Selenium是一个用于应用的功能工具,Selenium 直接运行在中,就像真正的用户在操作一样。

由于这个性质,Selenium也是一个强大的网络数据采集工具,其可以让浏览器自动加载页面,获取需要的数据,甚至页面截图,或者是判断网站上某些动作是否发生。

Selenium自己不带浏览器,需要配合第三方浏览器来使用。支持的浏览器有Chrome、Firefox、IE、Phantomjs等。

(2) 设备问题:当你使用当前设备浏览网站出现问题时,可以换其他设备浏览网站,看打开是否正常。网站要进行改动,有的时候是需要用到代码,要是自己的会的话,不需要找别人来帮忙,还可以看出网站有些代码是影响我们网站打开的速度,这样我们就可以看看能不能处理掉,提高网站打开的速度,达到优化的效果,那么html网站代码如何优化,为大家讲解一下。5、提交以上操作,点击工具栏的“提交”按钮,在弹出的窗口点击“执行”好空间 软件,操作过程中可能要重启电脑,点击“是” 以让程序在重启模式下完成这些等待执行的操作,如图:。

什么程序(甚至后台服务)可以被运行,什么程序不可以被运行。这里可以肯定的告诉大家这个系统进程不是病毒,请注意后台有哪些大的程序在运行或者感染病毒,当电脑什么程序也不运行的时候我们会发现cpu占有数 值能达到99%,是核心虚拟出来的,就会发现: 否 木马,system idle process system占用cpu时间变化。当然也可以使用三台vps服务器,两台运行爬虫节点程序,将ip改为控制节点主机的公网ip,一台运行控制节点程序,进行分布式爬取,这样更贴近真实的爬取环境。

Phantomjs是一个“无头”浏览器,也就是没有界面的浏览器,但是功能与普通的浏览器无异。

二、在中使用Selenium获取QQ空间好友说说

之前使用pip安装好了selenium,直接在代码中import即可。

刷qq空间说说的q友们应该都会发现,好友发布自己每天的说说动态时,都会很去点赞增加人气,此站推荐一款刷qq空间说说赞工具给大家使用,就能轻松的针对指定的说说进行刷赞操作,大家快来下载吧。现在很的三星i9003手机的系统都是2.3.6了,可是很不知道2.3.6的系统怎么获取root权限,下面就来说说获取root权限的详细教程吧,其实教程还是挺简单的,在电脑上一键刷入root包,然后重新再启动手机就可以了,下面来看看具体的操作吧:。要删除的话,在电脑上删除更简单些,实际上个性签名就是别人说的说说,关于说说的问题当然要到空间解决喽,先到空间里,都会看到你发的说说,每条信息后面的有一栏,不是有一个“……”么。

我们需要爬取的页面时这样的:

QQ空间好友说说的链接为:{好友QQ号}/311我们抓取他发的说说的时间和内容。

python3运行代码

依旧先上代码:

# -*- coding:utf-8 -*-

from bs4 import BeautifulSoup

from selenium import webdriver

import time

# #使用Selenium的webdriver实例化一个浏览器对象,在这里使用Phantomjs

# driver = webdriver.PhantomJS(executable_path=r"D:\phantomjs-2.1.1-windows\bin\phantomjs.exe")

# #设置Phantomjs窗口最大化

# driver.maximize_window()

# 登录QQ空间

def get_shuoshuo(qq):

chromedriver = r"D:\soft\chromedriver_win32\chromedriver.exe"

空间人气软件_qq空间互踩软件_好空间 软件

driver = webdriver.Chrome(chromedriver)

#使用get()方法打开待抓取的URL

driver.get('http://user.qzone.qq.com/{}/311'.format(qq))

time.sleep(5)

#等待5秒后,判断页面是否需要登录,通过查找页面是否有相应的DIV的id来判断

try:

driver.find_element_by_id('login_div')

a = True

except:

a = False

if a == True:

#如果页面存在登录的DIV,则模拟登录

driver.switch_to.frame('login_frame')

driver.find_element_by_id('switcher_plogin').click()

driver.find_element_by_id('u').clear() # 选择用户名框

driver.find_element_by_id('u').send_keys('QQ号码')

driver.find_element_by_id('p').clear()

driver.find_element_by_id('p').send_keys('QQ密码')

driver.find_element_by_id('login_button').click()

time.sleep(3)

driver.implicitly_wait(3)

#判断好友空间是否设置了权限,通过判断是否存在元素ID:QM_OwnerInfo_Icon

try:

driver.find_element_by_id('QM_OwnerInfo_Icon')

b = True

except:

b = False

#如果有权限能够访问到说说页面,那么定位元素和数据,并解析

if b == True:

driver.switch_to.frame('app_canvas_frame')

空间人气软件_qq空间互踩软件_好空间 软件

content = driver.find_elements_by_css_selector('.content')

stime = driver.find_elements_by_css_selector('.c_tx.c_tx3.goDetail')

for con, sti in zip(content, stime):

data = {

'time': sti.text,

'shuos': con.text

}

print(data)

pages = driver.page_source

soup = BeautifulSoup(pages, 'lxml')

#尝试一下获取Cookie,使用get_cookies()

cookie = driver.get_cookies()

cookie_dict = []

for c in cookie:

ck = "{0}={1};".format(c['name'], c['value'])

cookie_dict.append(ck)

i = ''

for c in cookie_dict:

i += c

print('Cookies:', i)

print("==========完成================")

driver.close()

driver.quit()

if __name__ == '__main__':

get_shuoshuo('好友QQ号码')

获取到的数据截图如下:

三、代码简析

1.照例,导入需要使用的模块:

from bs4 import BeautifulSoup

qq空间互踩软件_好空间 软件_空间人气软件

from selenium import webdriver

import time

2.使用Selenium的webdriver实例化一个浏览器对象,在这里使用Phantomjs:

system.setproperty("webdriver.chrome.driver","d:\\chromedriver.exe")。driver = selenium::webdriver.for :phantomjs。from selenium import webdriver class register(unittest.testcase): def setup(self): self.driver = webdriver.firefox() self.driver.implicitly_wait(30) self.base_url = " https://www.example.com/" self.verificationerrors = [] self.accept_next_alert...。

3.设置Phantomjs窗口最大化:

driver.maximize_window()

4.主函数部分

使用get()方法打开待抓取的URL:

uin=hxxp://ctc.qzs.qq.com/qzone/v5/owner2/ic/feeds.html/mood/&unikey=http://user.qzone.qq.com/q.com/cgi-bin/emotion_cgi_getcmtreply_v6。qq空间2:https://user.qzone.qq.com/270231753/infocenter。qq空间1:https://user.qzone.qq.com/272799479/infocenter。

等待5秒后,判断页面是否需要登录,通过查找页面是否有相应的DIV的id来判断:

try:

driver.find_element_by_id('login_div')

a = True

except:

a = False

如果页面存在登录的DIV,则模拟登录:

driver.switch_to.frame('login_frame') #切换到登录ifram

driver.find_element_by_id('switcher_plogin').click()

driver.find_element_by_id('u').clear()#选择用户名框

driver.find_element_by_id('u').send_keys('QQ号')

driver.find_element_by_id('p').clear()#选择密码框

driver.find_element_by_id('p').send_keys('QQ密码')


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-116032-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...