代码:
import requests from fake_useragent import UserAgent from lxml import html etree=html.etree def get_url(url): headers = {"User-Agent": UserAgent().random} resp = requests.get(url, headers) if resp.status_code==200: resp.encoding="utf-8" return resp.text def parse_list(html): e=etree.HTML(html) list_url=["http://maoyan.com{}".format(url) for url in e.xpath('//div[@class="movie-item film-channel"]/a/@href')] return list_url def parse_index(html): pass def main(): url = "https://maoyan.com/films?showType=3&offset=0" html=get_url(url) movie_url=parse_list(html) print(movie_url) if __name__=="__main__": main()
运行结果:
老师请问一下,为什么我的list_url返回的是一个空列表?
老师,导出csv是这样的格式,有什么办法导成正常的表格样式吗,就是把‘name’放在第一行去
问题:
老师请问一下,xpath插件在哪可以下载,本章资料中好像没有这个
现在瓜子网用这个方式也加载不出来了呀,docker这块的文档,下载里也没有
代码:
import re s="<div><a class='title' href='http://www.baidu.com'>尚学堂bjsxt</a>></div>" pattern=r"[\u4e00-\u9fa5]*" v=re.findall(pattern,s) print(v)
老师请问一下,为什么在这里我用*匹配汉字的时候结果是这样,可是用+号匹配汉字的时候就可以成功,*不是匹配0个或多个,+是匹配1个或多个,根据贪婪原则,它们不是都应该按多的匹配吗?可是为什么*的匹配结果和+的不同?
from urllib.request import Request,urlopen,HTTPCookieProcessor,build_opener from fake_useragent import UserAgent from http.cookiejar import MozillaCookieJar from urllib.parse import urlencode def get_cookie(): url = "https://conch.xiami.com/api/passports/login?_xm_cf_=X7XmPS6phj26eeGtm36-k9NS" form_data={ "user":13629949237, "password":"hgc950226" } headers={"User-Agent":UserAgent().random} rep=Request(url,headers=headers,data=(urlencode(form_data).encode())) cookiejar=MozillaCookieJar() handle=HTTPCookieProcessor(cookiejar) opener=build_opener(handle) resp=opener.open(rep) cookiejar.save("cookie.txt",ignore_discard=True,ignore_expires=True) get_cookie() add_url="https://conch.xiami.com/"
结果:
老师请问一下,我使用cookie登录虾米音乐的时候,为什么会出现这个问题?
import requests url="https://music.163.com/login" headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0 getUserInfoByUserId "} resp=requests.get(url,headers=headers) resp.encoding="utf-8" print(resp.content)
老师请问一下我使用request来登录网易云音乐,为什么结果是这样的呢?是不是哪里有问题?
老师我想请问一下 这个 为什么使用代理会不成功,我不用代理直接爬取京东还能返回数据用了就直接不行 是不是使用代理的原因
怎么没有爬取微信公众号和APP数据的视频,能简单介绍下这些是怎么爬取的吗?
下载不了requests,和视频上的怎么不一样
老师,我按照视频写出现了图一的错误。然后我百度了一下解决办法,如图二,按照图二尝试了一下还是没有成功。
视频中说chromedriver.exe安装在Python下的Script目录中,与图二冲突,到底安装在哪?
我的浏览器是双核浏览器,这与出现图一的问题是否有关联?
图一的错误我还是没有解决
老师,我在爬取网页的时候,看到Network的请求方式是get、返回类型是txt/html,我写了如下语句
import requests url = " response = requests.get(url=url).text print(response)
打印出来的怎么是中文乱码的?
老师,上面两张图是我自己电脑debug出来的,为什么没有视频中老师的那些内容?
为什么我什么都爬不到,直接退出了
from urllib.request import Request,urlopenfrom urllib.parse import quotedef get_html(url): headers={ "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 QIHU 360SE" } request=Request(url,headers=headers) response=urlopen(request) return response.read().decode()def save_html(html,filename): with open('filname.hyml','w',encoding='utf_8') as f: f.write(html)def main(): for i in range(3): url='https://tieba.baidu.com/f?kw=%E8%B5%9B%E5%8D%9A%E6%9C%8B%E5%85%8B2077' html=get_html(url) filename='第'+str(i+1)+'页.html' save_html(html)if __name__=="__name__": main()
urllib.request Request,urlopen urllib.parse quote get_html(url): headers={ : } request=Request(url,=headers) response=urlopen(request) response.read().decode() save_html(html,): (,,=) f: f.write(html) main(): i (): url=html=get_html(url) =+(i+)+save_html(html) __name__==: main()
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637