十六是只仙 发表于 2018-11-28 20:54:01

selenium框架爬取虎牙主播的粉丝信息

最近我有一个项目,就是爬取主播粉丝信息,但是我发现网页源代码里面没有涉及粉丝这块信息,但是检查的话,就有,请问大佬们,我应该怎么操作???

wongyusing 发表于 2018-11-28 23:12:33

看network哪里。
搜索fanlist然后追踪js的语句,找到请求的链接,
或者直接复制粉丝数进行搜索

塔利班 发表于 2018-11-29 09:44:51

from selenium import webdriver

browser=webdriver.Chrome()
browser.get('https://www.huya.com/mswztv')
num=browser.find_element_by_css_selector('#activityCount')
print(num.text)

十六是只仙 发表于 2018-11-29 14:02:26

塔利班 发表于 2018-11-29 09:44
from selenium import webdriver

browser=webdriver.Chrome()


请问activityCount在哪里找的

塔利班 发表于 2018-11-29 14:03:37

十六是只仙 发表于 2018-11-29 14:02
请问activityCount在哪里找的

橘黄色订阅,不是粉丝数么

十六是只仙 发表于 2018-11-29 14:12:56

塔利班 发表于 2018-11-29 14:03
橘黄色订阅,不是粉丝数么


我是需要爬取正在看直播的粉丝的所有信息,比如他们等级,姓名等等{:10_243:}

塔利班 发表于 2018-11-29 14:30:12

from selenium import webdriver
from bs4 import BeautifulSoup
browser=webdriver.Chrome()
browser.get('https://www.huya.com/mswztv')
soup=BeautifulSoup(browser.page_source,'lxml')
for each in soup.find(id="J_weekRankList").find_all('li'):
    try:
      print(each.text)
    except:
      pass
有的等级信息在tag里,自己提取下

十六是只仙 发表于 2018-11-29 15:12:02

塔利班 发表于 2018-11-29 14:30
from selenium import webdriver
from bs4 import BeautifulSoup
browser=webdriver.Chrome()



有错啊

塔利班 发表于 2018-11-29 15:15:37

十六是只仙 发表于 2018-11-29 15:12
有错啊

你没有lxml库么,不行换个
'lxml'换成'html.parser'

十六是只仙 发表于 2018-11-29 15:31:11

塔利班 发表于 2018-11-29 15:15
你没有lxml库么,不行换个
'lxml'换成'html.parser'

我安装库啦
但是什么都没有抓到啊

塔利班 发表于 2018-11-29 15:42:32

我的IDLE和PYCHARM都行

塔利班 发表于 2018-11-29 15:43:15

你得设置pycharm运行关联控制台

十六是只仙 发表于 2018-11-29 16:32:55

塔利班 发表于 2018-11-29 15:43
你得设置pycharm运行关联控制台

哇!实在太感谢了。还想请教下,假如我只想打印第一个span的内容,我把try里面内容换成了each = each.select("span")
      print(each.text)
但好像运行不成功......
还有,我在run里面关联console了,但是跑程序的时候只会在console里面打印出来,这种数据可以保留到本地吗?

塔利班 发表于 2018-11-29 17:20:03

保存文件可以,你也可以尝试写入数据库
from selenium import webdriver
from bs4 import BeautifulSoup
browser=webdriver.Chrome()
browser.get('https://www.huya.com/mswztv')
soup=BeautifulSoup(browser.page_source,'lxml')
for each in soup.find(id="J_weekRankList").find_all('li'):
    try:
      each = each.select("span")
      print(each.text)
    except:
      pass

十六是只仙 发表于 2018-11-29 17:28:04

塔利班 发表于 2018-11-29 17:20
保存文件可以,你也可以尝试写入数据库
from selenium import webdriver
from bs4 import BeautifulSoup
...

您好,我还有一个问题,就是
当我第一次访问get到数据是正常的
但是第二次在进行,就得不到 li 了
请问这是为什么?{:10_269:}

塔利班 发表于 2018-11-29 17:29:30

十六是只仙 发表于 2018-11-29 17:28
您好,我还有一个问题,就是
当我第一次访问get到数据是正常的
但是第二次在进行,就得不到 li 了


没遇到

十六是只仙 发表于 2018-11-29 17:39:14

塔利班 发表于 2018-11-29 17:29
没遇到

哎,那我再开个帖子问一下,凉啊

十六是只仙 发表于 2018-11-29 18:10:19

塔利班 发表于 2018-11-29 17:29
没遇到

.....不好意思,再请教一个问题,如果我要爬取该直播间中参与讨论的用户昵称、用户头像、用户等级、用户年龄、地理位置、用户描述、用户性别、发表评论的内容等信息;就是这种动态信息,您刚才的方法就不可以用了,比如在直播间https://www.huya.com/saonan,抓取评论用户的信息?

q9735709 发表于 2021-9-22 15:14:59

十六是只仙 发表于 2018-11-29 17:39
哎,那我再开个帖子问一下,凉啊

最近还在弄虎牙吗
页: [1]
查看完整版本: selenium框架爬取虎牙主播的粉丝信息