接着上一步模拟登录操作。学了两天的session 了没有搞定登录。还是回到selenium模拟登录爬取。但是验证码这一块,没有搞定,在文中用的人工辅助登录成功。代码太丑,实在是无言面对同行。

import time
from selenium import webdriver
import csv
from lxml import etreebrowser  =  webdriver.Firefox()  # 先模拟登录
url = 'http://www.dxy.cn/bbs/thread/626626#626626/'   #丁香医生
browser.get(url)
time.sleep(3)
browser.maximize_window()#打开网页窗口
time.sleep(4)
#denglu = browser.find_element_by_class_name("activate-info-tip-btn")[1]#账号输入框  'FirefoxWebElement' object does not support indexing
denglu = browser.find_element_by_xpath('//div[@class="nav_account"]/a')  #找到第一个a节点
denglu.click()  #点击进入到登录网站
time.sleep(4)
dl = browser.find_element_by_xpath('//a/i[@class="wechat__ico ico_pc"]')
dl.click()
time.sleep(5)     #这里进入电脑版登录界面
input= browser.find_element_by_name("username")  #找到账号输入的地方
input.send_keys("17353239795")
password = browser.find_element_by_name("password")#密码输入框
password.send_keys('wq1255462268')
login_em = browser.find_element_by_class_name("button")#登录按钮
login_em.click()
time.sleep(15)  #需要验证码  要显示登录成功啊。。。。加上人工操作点击验证
cookie = browser.get_cookies()
cookie_dict = {i['name']: i['value'] for i in cookie}
# 转到抓取页面
browser.get(url)
html = browser.page_source
html = etree.HTML(html)
result1 = html.xpath('//div[@class="auth"]')  #评论者姓名
result2 = html.xpath('//div[@class="info clearfix"]')
result3 = html.xpath('//div[@class="user_atten"]/ul/li[1]')
result4 = html.xpath('//div[@class="user_atten"]/ul/li[2]')
result5 = html.xpath('//div[@class="user_atten"]/ul/li[3]')
result6 = html.xpath('//tbody//td[@class="postbody"]')  # 取出对应的回复评论  都是list型
result7 = html.xpath('//div[@class="post-info"]/span[1]')
# 创建空列表存放数据
user = []
level = []
jifen = []
depiao = []
dingdang = []
content = []
time = []
with open("dingxiang4.csv", 'a', encoding='utf-8',newline='') as csvfile:writer = csv.writer(csvfile)writer.writerow(["user", "level","jifen","depiao","dingdang","content", "time"])for data in result1:x = data.xpath('string(.)') .strip() # 对单个对象去掉换行符,只留下字符串user.append(x)  # 做成字典型for data in result2:y = data.xpath('string(.)').strip()level.append(y)for data in result3:z = data.xpath('string(.)').strip()jifen.append(z)for data in result4:x = data.xpath('string(.)').strip() # 对单个对象去掉换行符,只留下字符串depiao.append(x)  # 做成字典型for data in result5:x = data.xpath('string(.)').strip()  # 对单个对象去掉换行符,只留下字符串dingdang.append(x)  # 做成字典型for data in result6:x = data.xpath('string(.)').strip()  # 对单个对象去掉换行符,只留下字符串content.append(x)  # 做成字典型for data in result7:x = data.xpath('string(.)').strip()  # 对单个对象去掉换行符,只留下字符串time.append(x)  # 做成字典型print(len(content))for i in range(len(user)):result = user[i],level[i] ,jifen[i],depiao[i],dingdang[i],content[i], time[i]print(result)writer.writerow(result)
呵呵呵确实丑

运行结果如下:

('楼医生', '常驻站友', '3积分', '1得票', '168丁当', '我遇到一个“怪”病人,向大家请教。她,42岁。反复惊吓后晕厥30余年。每次受响声惊吓后发生跌倒,短暂意识丧失。无逆行性遗忘,无抽搐,无口吐白沫,无大小便失禁。多次跌倒致外伤。婴儿时有惊厥史。入院查体无殊。ECG、24小时动态心电图无殊;头颅MRI示小软化灶;脑电图无殊。入院后有数次类似发作。请问该患者该做何诊断,还需做什么检查,治疗方案怎样?', '2003-11-17 19:12')
('lion000', '丁香园准中级站友', '43积分', '7得票', '82丁当', '从发作的症状上比较符合血管迷走神经性晕厥,直立倾斜试验能协助诊断。在行直立倾斜实验前应该做常规的体格检查、ECG、UCG、holter和X-ray胸片除外器质性心脏病。贴一篇“口服氨酰心安和依那普利治疗血管迷走性晕厥的疗效观察”作者:林文华 任自文 丁燕生http://www.ccheart.com.cn/ccheart_site/Templates/jieru/200011/1-1.htm', '2003-11-17 21:02')
('xghrh', '丁香园荣誉版主', '68积分', '15得票', '413丁当', '同意lion000版主的观点:如果此患者随着年龄的增长,其发作频率逐渐减少且更加支持,不知此患者有无这一特点。入院后的HOLTER及血压监测对此患者只能是一种安慰性的检查,因在这些检查过程中患者发病的机会不是太大,当然不排除正好发作的情况。对此患者应常规作直立倾斜试验,如果没有诱发出,再考虑有无可能是其他原因所致的意识障碍,如室性心动过速等,但这需要电生理尤其是心腔内电生理的检查,毕竟是有一种创伤性方法。因在外地,下面一篇文章可能对您有助,请您自己查找一下。心理应激事件诱发血管迷走性晕厥1例 ,杨峻青、吴沃栋、张瑞云,中国神经精神疾病杂志, 2002 Vol.28 No.2', '2003-11-17 21:45')
('keys', '常驻站友', '8积分', '0得票', '141丁当', '该例不排除精神因素导致的,因为每次均在受惊吓后出现。当然,在作出此诊断前,应完善相关检查,如头颅MIR(MRA),直立倾斜试验等。', '2003-11-17 21:52')
('楼医生', '常驻站友', '3积分', '1得票', '168丁当', '谢谢上面几位的热心。这个病人从学会走路就出现症状,并且近几年发作越来越频繁,一个月有4、5次。如果说是血管迷走性晕厥,它的机理是什么?在这个病人身上如何解释?', '2003-11-17 22:32')
('shilly', '丁香园中级站友', '244积分', '253得票', '362丁当', '不会是心因性癫痫吧?我不是专科,猜猜', '2003-11-17 22:42')
('jrhs', '丁香园准中级站友', '71积分', '45得票', '361丁当', '倾斜试验一定先排除器质性心脏病。', '2003-11-18 12:40')
('yangwein', '铁杆站友', '26积分', '9得票', '216丁当', '1,头颅MRI示小软化灶;脑电图无殊,惊吓后晕厥30余年,婴儿时有惊厥史。先做动态脑电图排查癫痫,还有视觉诱发试验等,请神经内科会诊。2,排除神经内科问题后,行直立倾斜实验筛查血管迷走神经性晕厥。彩超排除器质性心脏病。', '2003-11-18 13:08')

关于session 我在去学学。

实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----爬取第二步相关推荐

  1. 实战大项目:模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容----登录第一步

    哎呀呀,先一步一步的来吧,我们知道要先登录才能查看全部的信息.好吧先去注册,记住账号和密码. 2.注册好了之后,先解决登录问题,可以看到有两个登录的地方,编号1.2. 打开网页,f12,先看看登录节点 ...

  2. 模拟登录丁香园,并抓取论坛页面所有的人员基本信息与回复帖子内容

    丁香园直通车抓取页面链接 一.首先利用selenium登录网站,此部分重点: 1.切换到账号密码表单登录,我采用了利用style将display值变为block,代码如下: js1 = 'docume ...

  3. Day7-模拟登录丁香园,爬取所有用户基本信息和回复内容

    最后一天了,趁着周末把DataWhale爬虫7天训练最后的task做出来了. 前几天的学习,从学习http,post和get两种请求方法开始,到学习简单urllib和requests请求一个网页进行简 ...

  4. python爬虫(四)——模拟登录丁香园

    实战 实战小项目:模拟登录丁香园,抓取论坛页面人员基本信息与回复帖子.丁香园论坛:http://www.dxy.cn/bbs/thread/626626#626626 思路 首先把登陆方式由扫码切换为 ...

  5. 爬虫入门学习(八)模拟登录丁香园论坛爬取用户信息

    爬虫入门学习(八)实战大项目模拟登录丁香园爬取信息 1 目标 2 思路 3 主要的技术点 3.1 模拟登录 3.2 抓取用户个人主页 4 完整代码 5 项目后期拓展 1 目标 模拟登录丁香园,并抓取页 ...

  6. python3爬虫——模拟登录丁香园并提取信息

    上一篇:模拟登录QQ邮箱 ps:在进行模拟登录时,输入账号密码后,会弹出验证码,目前还没有解决模拟验证,所以本教程需要进行人工验证. 代码: from selenium import webdrive ...

  7. python3爬虫模拟登录_python3爬虫——模拟登录丁香园并提取信息

    上一篇:模拟登录QQ邮箱 ps:在进行模拟登录时,输入账号密码后,会弹出验证码,目前还没有解决模拟验证,所以本教程需要进行人工验证. 代码: from selenium import webdrive ...

  8. 爬虫实战,抓取论坛帖子内容

    本文主要内容:以最短的时间写一个最简单的爬虫,可以抓取论坛的帖子标题和帖子内容. 本文受众:没写过爬虫的萌新. 入门 0.准备工作 需要准备的东西: Python.scrapy.一个IDE或者随便什么 ...

  9. 【Python3网络爬虫开发实战】3-基本库的使用-4抓取猫眼电影排行

    本节中,我们利用requests库和正则表达式来抓取猫眼电影TOP100的相关内容.requests比urllib使用更加方便,而且目前我们还没有系统学习HTML解析库,所以这里就选用正则表达式来作为 ...

最新文章

  1. 快速构建Windows 8风格应用32-构建辅助磁贴
  2. 知乎网解决HTML5 Placeholder的方案
  3. IHttpHandler的妙用(1):给图片添加水印
  4. Android测试框架-uiautomator
  5. 引用程序集没有强名称解决办法
  6. 线性规划——规范型,标准型,基阵、基本解、基本可行解、基变量、非基变量.... 概念梳理
  7. 解释器和编译器的区别
  8. ubuntu系统静态路由
  9. 软件过程改进之百科名片
  10. python七夕快乐图片_提前祝七夕快乐图片
  11. jmeter压力测试_用Jmeter实现对接口的压力测试
  12. 不同于NLP,数据驱动、机器学习无法攻克NLU,原因有三
  13. 剑指Offer-- 二维数组中的查找
  14. c# 扩展方法奇思妙用变态篇一:由 Fibonacci 数列引出 “委托扩展” 及 “递推递归委托”...
  15. 模板设计模式_设计模式实用又简单的模板模式
  16. UGUI的Drag实现鼠标拖拽
  17. 【.net core 跨平台】第一步 在Ubuntu16.04 配置.net core环境
  18. 攻击机与靶机的文件共享、演示流程以及第三方主机的访问
  19. 征战牛市!HASHBOX第二期矿场行活动完美落幕
  20. C语言—字符串函数和内存函数

热门文章

  1. 亚洲研究院微软笔试题
  2. uCOSIII移植stm32c8t6
  3. PM Q7声卡使用教程
  4. 浅谈 什么是封装、继承与多态?
  5. vue父子组件传值:详解父组件向子组件传值(props)
  6. 简单3步将你的python转成exe格式
  7. 深入剖析 grep 命令
  8. 三星礼包 android,SAMSUNG 三星 Galaxy S8 智能手机 移动合约版(伪开箱)
  9. Mockito的简单使用
  10. c语言中数组部分输入赋值,c语言scanf对数组赋值