获取糗事百科文字栏目所有用户ID

import requests
from lxml import etree
import time

headers = {‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.92 Safari/537.36‘,
‘Cookie‘: ‘gr_user_id = c6f58a39 - ea25 - 4f58 - b448 - 545070192c4e;59a81cc7d8c04307ba183d331c373ef6_gr_session_id = e8e4b66f - 440a - 4ae7 - a76a - fe2dd2b34a26;59a81cc7d8c04307ba183d331c373ef6_gr_last_sent_sid_with_cs1 = e8e4b66f - 440a - 4ae7 - a76a - fe2dd2b34a26;59a81cc7d8c04307ba183d331c373ef6_gr_last_sent_cs1 = N % 2FA;59a81cc7d8c04307ba183d331c373ef6_gr_session_id_e8e4b66f - 440a - 4ae7 - a76a - fe2dd2b34a26 = true;grwng_uid = 9ec14ad9 - 5ac0 - 4bb1 - 81c1 - bc60d2685710;abtest_ABTest4SearchDate = b;xzuuid = 79426b52;_uab_collina = 154660443606130958890473;TY_SESSION_ID = 907f32df - c060 - 49ca - b945 - 98215cc03475;rule_math = pvzq3r06hi‘}

def get_name(url):
res = requests.get(url,headers = headers)
html = etree.HTML(res.text)
result = etree.tostring(html)
infos = html.xpath(‘//*[@class="article block untagged mb15 typs_hot"]‘)
try:
for info in infos:
name = info.xpath(‘div[1]/a[2]/h2/text()‘)
if len(name) != 0:
print(name[0])
except Exception as e:
print(e)

if __name__ == ‘__main__‘:
urls = [‘https://www.qiushibaike.com/text/page/{}/‘.format(number) for number in range(1, 14)]
for url in urls:
get_name(url)
print("------------------这是一页的分割线----------------------------")
time.sleep(1)``

获取糗事百科网“文字”栏目所有的用户ID。重点关注xpath语法;

 html.xpath(‘//*[@class="article block untagged mb15 typs_hot"]‘)获取所有段子DIV。返回一个对象存储在列表中。

 name = info.xpath(‘div[1]/a[2]/h2/text()‘) 再从每一个对象中获取ID。

原文地址:http://blog.51cto.com/12884584/2352025

时间: 2024-08-29 03:10:01

获取糗事百科文字栏目所有用户ID的相关文章

python3 获取糗事百科首页的段子

# -*- coding:utf-8 -*- import urllibimport urllib.requestimport re page = 1 url = 'http://www.qiushibaike.com/hot/page/1'+str(page)user_agent = 'Mozilla/4.0 (compatible;MSIE 5.5;Windows NT)'headers = { 'User-Agent':user_agent} try: request = urllib.r

(python)查看糗事百科文字 点赞 作者 等级 评论

import requestsimport reheaders = { 'User-Agent':'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)'}info_lists = []def judgment_sex(class_name): if class_name == 'womenIcon': return '女' else: return '男'def get_info(url): re

Python爬虫-爬取糗事百科段子

闲来无事,学学python爬虫. 在正式学爬虫前,简单学习了下HTML和CSS,了解了网页的基本结构后,更加快速入门. 1.获取糗事百科url http://www.qiushibaike.com/hot/page/2/    末尾2指第2页 2.先抓取HTML页面 import urllib import urllib2 import re page = 2 url = 'http://www.qiushibaike.com/hot/page/' + str(page) #对应第2页的url

Python 爬虫系列:糗事百科最热段子

1.获取糗事百科url http://www.qiushibaike.com/hot/page/2/    末尾2指第2页 2.分析页面,找到段子部分的位置, 需要一点CSS和HTML的知识 3.编写代码 1 import urllib.request 2 from bs4 import BeautifulSoup 3 from urllib.request import URLError 4 from urllib.request import HTTPError 5 import time

【python】抄写大神的糗事百科代码

照着静觅大神的博客学习,原文在这:http://cuiqingcai.com/990.html 划重点: 1. str.strip() strip函数会把字符串的前后多余的空白字符去掉 2. response.read().decode('utf-8','ignore')  要加'ignore'忽略非法字符,不然总是报解码错误 3. python 3.x 中  raw_input 改成 input 了 4. 代码最好用notepad++先写 格式清晰一点 容易发现错 尤其是缩进和中文标点的错误

python 糗事百科实例

爬取糗事百科段子,假设页面的URL是 http://www.qiushibaike.com/8hr/page/1 要求: 使用requests获取页面信息,用XPath / re 做数据提取 获取每个帖子里的用户头像链接.用户姓名.段子内容.点赞次数和评论次数 保存到 json 文件内 参考代码 #qiushibaike.py #import urllib #import re #import chardet import requests from lxml import etree page

爬虫二:爬取糗事百科段子

这一次我们利用BeautifulSoup进行网页的解析,方法其实跟前一次的差不多,只是这里我们爬取的是糗事百科,糗事百科有反爬机制,我们需要模拟用户来访问糗事百科网站,也就是加上头部信息headers,其实整体思路与上一篇所写爬虫的思路差不多,拿个速度可以共用. 1.首先我们在打开网页,并在网页空白处右击选择"检查"在弹出的网页里选择"Network" 2.然后按下"F5"刷新一下 3.在刷新后的页面里我们可以看到多条信息,任意选择一条信息点开

糗事百科的段子

#! usr/bin/env python# -*- coding: utf-8 -*- '''1.抓取糗事百科热门段子2.过滤带有图片的段子3.实现每按一次回车显示一个段子的发布时间,发布人,段子内容,点赞数.''' import urllib2import re class QSBK(object): def __init__(self): self.pageIndex = 1 self.user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Win

Python爬虫爬取糗事百科段子内容

参照网上的教程再做修改,抓取糗事百科段子(去除图片),详情见下面源码: #coding=utf-8#!/usr/bin/pythonimport urllibimport urllib2import reimport threadimport timeimport sys #定义要抓取的网页#url = 'http://www.qiushibaike.com/hot/'#读取要抓取的网页#globalcontent = urllib.urlopen(url).read()#抓取段子内容#new_