爬虫03-爬取top250的名言评分

# top250的详情信息并写入Excel文件
# 1.抓取页面---->HTML源代码--->urllib / requests
#     response.text   ----  一般取文本方法
#     response.content.decode('想要的编码')   ---   如果乱码
# requests是基于urllib做的封装,看官方文档
# 2.解析页面---->正则表达式/css选择器/XPath--->re/beautifulsoup4/lxml
# 3.保存数据---->持久化处理---->CSV/Excel---->csv/xlwt/openpyxl
# 4.数据分析(从数据中找出有价值的信息)
import requests
import bs4

def main():
    resp = requests.get(
        'https://movie.douban.com/top250',
        hearders={
            'User-Agent': 'http://piping.mogumiao.com/proxy/api/get_ip_bs?appKey=3ee6f035175f4b508d8a825da0fb3833&count=4&expiryDate=0&format=2&newLine=3'
        }
    )
    if resp.status_code==200:
        # print(resp.text)
        soup = bs4.BeautifulSoup(resp.text,'html.parser')   # 类名+括号=构造器方法
        # 第一个参数是界面,第二个是解析器
        # soup.select('选择器')
        title_spans = soup.select('#content > div > div.article > ol > li> div > div.info > div.hd > a > span:nth-child(1)')
        rating_spans = soup.select('div > div.info > div.bd > div > span.rating_num')
        quote_spans = soup.select('div.info > div.bd > p.quote > span')
        anchors = soup.select('div.article > ol > li> div > div.info > div.hd > a')
        
    else:
        print(f'请求失败,响应状态码:{resp.status_code}')
上一篇:常见c++笔试题整理(含答案)page26


下一篇:程序员编程艺术第二十五章:Jon Bentley:90%无法正确实现二分查找