#Python爬虫 如何将网址中的汉字转换成16进制字符串?

初学爬虫 很多东西都不会 赐教~~~转换成为类似于这种 → %C5%C0%B3%E6%C8%E7%BA%CE%BD 的编码源码附上:from urllib import requestfrom bs4 import BeautifulSoupfor this in range(2, 4): print("It is being %d th item......"%(this-1), end="") url = sht["D" + str(this)].value response = request.urlopen("https://baike.baidu.com/item/北京航空航天大学") soup = BeautifulSoup(response, "html.parser") result = soup.select("body > div.body-wrapper.feature.feature_small.collegeSmall > div.feature_poster > div > div.poster-left > div.poster-top > div.lemma-summary > div:nth-child(1)") print("Done") print(result)备注 我的项目里有1000+个网址需要去爬取,所以挨个挨个转换是不可能的麻烦那些也不晓得的不要去网上搜了 我搜过了 没有答案的 不要到处复制粘贴过来谢谢

第1个回答  2022-02-03

    from urllib.parse import quote

    main_url = "https://baike.baidu.com/item"

    universitys = ["北京航空航天大学", "清华大学", "武汉大学", "华中科技大学"]

    for university in universitys:

    url = f"{main_url}/{quote(university)}"

    print(url)

结果如下:

https://baike.baidu.com/item/%E5%8C%97%E4%BA%AC%E8%88%AA%E7%A9%BA%E8%88%AA%E5%A4%A9%E5%A4%A7%E5%AD%A6

https://baike.baidu.com/item/%E6%B8%85%E5%8D%8E%E5%A4%A7%E5%AD%A6

https://baike.baidu.com/item/%E6%AD%A6%E6%B1%89%E5%A4%A7%E5%AD%A6

https://baike.baidu.com/item/%E5%8D%8E%E4%B8%AD%E7%A7%91%E6%8A%80%E5%A4%A7%E5%AD%A6

相似回答
大家正在搜