简单爬虫程序

自学了一点爬虫,技术不是很好,但是想爬点东西玩玩,就写了两个小demo。想着还是很适合小白看的,就来水一篇博吧
用到了一点爬虫基础知识,基本是requests库,和Beautifulsoup库的一些基本操作,想具体了解的可以找这两个库的官方文档看看,大有好处
第一个demo是爬了一下微博热搜榜(好像很常见。。。)

import requests
from bs4 import BeautifulSoup

textlist = []
url = "https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6"
html = requests.get(url)
html.encoding = "utf-8"
# print(html.text)
soup = BeautifulSoup(html.text,"html5lib")    # 解析,创建soup对象
   
for i in soup.find_all("a",target = "_blank"):    # 利用find_all()方法找到我们要的东西
    textlist.append([i.string,i.get("href")])     # 提取出文字和链接

print("-"*15,end=" ")
print("微博热搜榜前十",end=" ")
print("-"*15+"\n")
for j in range(1,11):
    print("\t{0}\t{1}\n".format(j,textlist[j]))    # 格式化输出

第二个demo是爬一些竞赛信息

import requests
from bs4 import BeautifulSoup

textlist = []
url = "http://www.52jingsai.com/portal.php"
html = requests.get(url)
# html.encoding = "utf-8"
soup = BeautifulSoup(html.text,"html5lib")

	# 因为这个网页的源码不是很方便所以就没选find_all()
for i in soup.select("div#portal_block_171_content div.list_tit h4 a"):  # 用的是bs4的css选择器select()
    textlist.append(i.string)
print("-"*20,end=" ")
print("各类比赛信息",end=" ")
print("-"*20+"\n")
for j in textlist:
    print("\t"+j+"\n")

然后,这些总结一下,首先官方文档是个好东西,就像武林秘籍一样,其次是要多练习,代码这东西写的多了就熟悉了!!!给自己加个油

你可能感兴趣的:(爬虫)