1. python如何爬取百度图片
几乎所有的网站都会有反爬机制,这就需要在爬取网页时携带一些特殊参数,比如:user-agent、Cookie等等,可以在写代码的时候用工具将所有参数都带上。
2. centos7安装python3.9显示404怎么办
如果在 CentOS 7 上安装清告掘 Python 3.9 时出现 404 错误,可能是由于缺少 yum 存储库导致的。您可以尝试以下方法:
首先,确保已启用 EPEL 存储库。EPEL 存储库包含许多扩展软件包友饥,而不仅仅是 CentOS 自带的。
sqlCopy codesudo yum install epel-release接下来,添答核加 IUS 存储库。IUS 存储库提供了 Python 3.9 的 RPM 软件包。
bashCopy codesudo rpm -Uvh https://rhel7.iuscommunity.org/ius-release.rpm现在,更新 yum 缓存并安装 Python 3.9。
Copy codesudo yum makecache如果您需要开发 Python 应用程序,请安装 python39-devel 和 python39-pip 软件包。
Copy codesudo yum install python39-devel python39-pip以上步骤中的命令将添加所需的存储库并安装 Python 3.9。如果您仍然遇到问题,请确保网络连接正常,并尝试使用其他源或手动下载 RPM 文件。
3. Python爬虫爬取图片这个报错怎么处理
你好!你的错误原因在于html页面获取到的img标签src属性中的链接,可能是因为src中的url格式是这样的:
<imgsrc="//hao123.com/xxx/xxx/xxx/"></img>
这样获取到的链接都没有带上协议:http或者https。而导致程序抛出ValueError的错误异常。
因为正常的url格式应该类似这样的:https://www..com/
即 协议://用户名:密码@子域名.域名.顶级域名:端口号/目录/文件名.文件后缀?参数=值#标志
参考网页链接
可将代码中第一个for循环中download_links.append修改为:
forpic_taginsoup.find_all('img'):
pic_link=pic_tag.get('src')
download_links.append('http:'+pic_link)
4. 新手,用python写的爬虫,为什么出现404
可能是你的header写的太简单了,我刚刚也是一直404,因为一开始我的header里只有User-Agent,再加上Accept,Accept-Encoding,Content-Type,Host,Origin,Proxy-Connection,Referer,Upgrade-Insecure-Requests就行了,这些都可以从chrome的开发者工具里直接看,或者用fiddler等工具看。
5. 使用python爬取网页,获取不到图片地址
这个大图片是在点击之后用 JS 控制加载的。
你可以看看 js/js.js 这个文件,253 行:
functionchangeImg(){
jQuery("#bitImg").attr('src','p/p'+pictID+'/'+indexNum+'.'+jpgPng);
}
其实大图的规律很好找, 下面缩略图列表的 src 可以用 #variContent > li > img 取到,可以在源码中的 107 行找到:
view-source:http://pictogram2.com/?p=2315
缩略图列表地址长这样:
/p/p0997/tn/1.jpg
/p/p0997/tn/2.jpg
/p/p0997/tn/3.jpg
...
如果要获取大图,只要去掉“tn”这一段就可以:
/p/p0997/1.jpg
/p/p0997/2.jpg
/p/p0997/3.jpg
...
然后拼接域名在前面,GET 下来就是大图,比如第一个大图链接:
第一个大图地址
不过,你如果仅仅只是想要抓那个站的全部素材,穷举“p0997”这一段的序号(比如改成“p0098”,这个应该是图集的 ID),并且遍历最后一段的图片序号,扩展名可能是 jpg 也可能是 png,从 1 开始(“1.jpg”,“2.jpg”...)直到返回 404 停止。
思路大概是这么个思路,不过话说回来,你这么爬人家素材真的道德吗?