网页中flash数据抓取(soup()bug外的开头,你都知道吗?)

优采云 发布时间: 2021-11-17 01:01

  网页中flash数据抓取(soup()bug外的开头,你都知道吗?)

  土豆 = webdriver.Firefox()

  土豆网.get(url)

  #创建工作簿和工作表对象

  workbook = xlwt.Workbook() #注意Workbook开头的W要大写

  sheet1 = workbook.add_sheet('优酷',cell_overwrite_ok=True)

  count1 = count2 = 3

  sheet1.write(0,0,'由于bug,暂时!!!最后一页数据需要自己手动统计')

  sheet1.write(1,0,'如有技术问题请联系陈鼎,微信chending2012')

  #开始写文件

  对于范围内的 num(2,22):

  pageNum='pager_num_0_'+str(num)

  tudou.find_element_by_id(pageNum).click()

  i = tudou.page_source#获取阅读的网络资源

  soup = BeautifulSoup(i,"html.parser")

  i1 = soup.find_all("strong",class_="figure_title figure_title_two_row")

  i2 = soup.find_all("span",class_="info_inner")

  #以上是经过beautifulsoup的初步筛选

  对于 i1 中的每个:

  p =r'(target="_blank">)(.+)()'

  play_name =re.search(p,str(each)).group(2)

  sheet1.write(count1,0,play_name)

  count1 += 1

  对于 i2 中的每个:

  play_num =''

  p = 桩(r'\d+\.?万?')

  play_num0 = p.findall(str(each))

  对于 play_num0 中的 each1:

  play_num +=str(each1)

  sheet1.write(count2,1,play_num)

  count2 += 1

  time.sleep(2)

  #最后一页,因为最后一页的元素地址有点不同,所以专门写了一篇

  pageNum ='pager_last_0'

  tudou.find_element_by_id(pageNum).click()

  i = tudou.page_source#获取阅读的网络资源

  soup = BeautifulSoup(i,"html.parser")

  i1 = soup.find_all("strong",class_="figure_title figure_title_two_row")

  i2 = soup.find_all("span",class_="info_inner")

  对于 i1 中的每个:

  p =r'(target="_blank">)(.+)()'#使用正则表达式匹配

  play_name =re.search(p,str(each)).group(2)

  sheet1.write(count1,0,play_name)

  count1 += 1

  对于 i2 中的每个:

  play_num =''

  p = 桩(r'\d+\.?万?')

  play_num0 = p.findall(str(each))

  对于 play_num0 中的 each1:

  play_num +=str(each1)

  sheet1.write(count2,1,play_num)

  count2 += 1

  #保存excel文件,如果有同名文件直接覆盖

  Nowtime = time.strftime('%Y-%m-%d',time.localtime(time.time()))

  excel_name = str(Nowtime)+'.xls'

  workbook.save(excel_name)

  打印('完成')

  土豆网.quit()

  暂时写这么多,以后会优化代码,写接口。

  这里有一个错误。 selenium翻页后,获取到的网页内容是上一页,而不是当前页。希望大神指点。

  2017.2.22 ----------------------------------- --

  问题已解决。选择最后一页标签后,选择上一页即可获取最后一页的数据!

  ----------------------------------------------- ---

  -------------------------附录

  1. Python高手之路python处理excel文件(方法总结)

  2.python模块介绍-xlwt创建xls文件(excel)

  3.seleniumwebdriver(python) 第三版

  4.美汤中文文档

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线