慕粉3878587
2016-09-01 10:19
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs
import re
resp = urlopen("https://en.wikipedia.org/wiki/Main_Page").read().decode("utf-8")
soup = bs(resp,"html.parser")
listUrls = soup.findAll("a", herf=re.compile("^/wiki/"))
for url in listUrls:
print(url["herf"])
最后一行 print(url["herf"])
里面的 herf 改成 href 试试看
没有写错的情况下,我还没有遇到过采集空白的问题,如果网站有防爬虫的机制,一般都是采集了一个错误页面,或者是和你使用浏览器看到的样子不一样的HTML代码。
网站是服务器来判断的,而服务器没有多么的聪明,能够区分人和爬虫,再精密的检查,也能够通过程序代码来破解,所以大部分网站防爬虫最简单的手段就是通过验证码和验证问题,就算是百度也是这么做的。
老师,假如程序没写错的情况下采集结果空白,怎么判断网站反爬虫机制起作用了呢?有没有相关的课程学习下?
真是打错了!汗颜,谢谢老师!
python遇见数据采集
59669 学习 · 200 问题
相似问题