本文共 994 字,大约阅读时间需要 3 分钟。
comment = []
username = []#抓取节点:每个评论为一个节点(包括用户信息、评论、日期等信息),如果一页有20条评论,那么nodes的长度就为20
nodes = driver.find_elements_by_css_selector(‘div.card > div.card-feed > div.content’)#对每个节点进行循环操作
for i in range(0,len(nodes),1): #判断每个节点是否有“展开全文”的链接 flag = False try: nodes[i].find_element_by_css_selector(“p>a[action-type=‘fl_unfold’]”).is_displayed(http://by.xxadc.com/) flag = True except: flag = False#如果该节点具有“展开全文”的链接,且该链接中的文字是“展开全文c”,那么点击这个要素,并获取指定位置的文本;否则直接获取文本#(两个条件需要同时满足,因为该selector不仅标识了展开全文,还标识了其他元素,没有做到唯一定位)if(flag and nodes[i].find_element_by_css_selector("p>a[action-type='fl_unfold']").text.startswith('展开全文c')): nodes[i].find_element_by_css_selector("p>a[action-type='fl_unfold']").click() comment.append(nodes[i].find_element_by_css_selector('p[node-type="feed_list_content_full"]').text)else: comment.append(nodes[i].find_element_by_css_selector('p[node-type="feed_list_content"]').text)username.append(nodes[i].find_element_by_css_selector("div.info>div:nth-child(2)>a").text)
转载地址:http://tdfn.baihongyu.com/